home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
i18nv102.zip
/
SAMPLE
/
PRINTF
/
PRINTF.C
< prev
next >
Wrap
C/C++ Source or Header
|
1995-08-28
|
5KB
|
134 lines
#include <stdio.h>
#include <locale.h>
#include <wchar.h>
#define PRINT_RESULT(PRINT_STATEMNT) { \
printf("Output:\n"); \
printf("Return Code: %d\n\n", (PRINT_STATEMNT)); \
}
main()
{
short sn;
int n;
int rc;
setlocale(LC_ALL, "");
printf("%s\n",
"printf(\"%4d%4i%4o%4u%4x%4X\\n\", 123, 123, 123, 123, 123, 123);");
PRINT_RESULT(printf("%4d%4i%4o%4u%4x%4X\n", 123, 123, 123, 123, 123, 123));
printf("%s\n",
"printf(\"%.1d %.3d %01d %03d %.1x %.3x %01x %03x\\n\", \n"
" 12, 12, 12, 12, 12, 12, 12, 12);");
PRINT_RESULT(printf("%.1d %.3d %01d %03d %.1x %.3x %01x %03x\n", \
12, 12, 12, 12, 12, 12, 12, 12));
printf("%s\n",
"printf(\"%d %o %x %X %u %i %p\\n\", \n"
" -12345, -12345, -12345, -12345, -12345, -12345, -12345);");
PRINT_RESULT(printf("%d %o %x %X %u %i %p\n", \
-12345, -12345, -12345, -12345, -12345, -12345, -12345));
printf("%s\n",
"printf(\"%\\\'d %\\\'o %\\\'x %\\\'X %\\\'u %\\\'i %\\\'p\\n\", \n"
" -12345, -12345, -12345, -12345, -12345, -12345, -12345);");
PRINT_RESULT(printf("%\'d %\'o %\'x %\'X %\'u %\'i %\'p\n", \
-12345, -12345, -12345, -12345, -12345, -12345, -12345));
printf("%s\n",
"printf(\"%#d %#o %#x %#X %#u %#i %#p\\n\", \n"
" -12345, -12345, -12345, -12345, -12345, -12345, -12345);");
PRINT_RESULT(printf("%#d %#o %#x %#X %#u %#i %#p\n", \
-12345, -12345, -12345, -12345, -12345, -12345, -12345));
printf("%s\n",
"printf(\"abc %s ghi %s mno\\n\", \"def\", \"jkl\");");
PRINT_RESULT(printf("abc %s ghi %s mno\n", "def", "jkl"));
printf("%s\n",
"printf(\"abc %2$s ghi %1$s mno\\n\", \"jkl\", \"def\");");
PRINT_RESULT(printf("abc %2$s ghi %1$s mno\n", "jkl", "def"));
printf("%s\n",
"printf(\"abc %4$*3$.*2$s ghi %1$s mno\\n\", \"jkl\", 5, 5, \"def\");");
PRINT_RESULT(printf("abc %4$*3$.*2$s ghi %1$s mno\n", "jkl", 5, 5, "def"));
printf("%s\n",
"printf(\"abc %4$*3$.*2$S ghi %1$S mno\\n\", L\"jkl\", 5, 5, L\"def\");");
PRINT_RESULT(printf("abc %4$*3$.*2$S ghi %1$S mno\n", L"jkl", 5, 5, L"def"));
printf("%s\n",
"printf(\"%s %5s %5.2s %2.5s\\n\", \n"
" \"abc\", \"abc\", \"abc\", \"abc\");");
PRINT_RESULT(printf("%s %5s %5.2s %2.5s\n", \
"abc", "abc", "abc", "abc"));
printf("%s\n",
"printf(\"%S %5S %5.2S %2.5S\\n\", \n"
" L\"abc\", L\"abc\", L\"abc\", L\"abc\");");
PRINT_RESULT(printf("%S %5S %5.2S %2.5S\n", \
L"abc", L"abc", L"abc", L"abc"));
printf("%s\n",
"printf(\"%*.*f\\n\", 8, 2, 12.345);");
PRINT_RESULT(printf("%*.*f\n", 8, 2, 12.345));
printf("%s\n",
"printf(\"%2$*3$d %1$4s\\n\", \"foo\", 345, 5);");
PRINT_RESULT(printf("%2$*3$d %1$4s\n", "foo", 345, 5));
printf("%s\n",
"printf(\"%2$3.3d abc %1$2.-3d def %3$4.d ghi\\n\", 1, 2, 3);");
PRINT_RESULT(printf("%2$3.3d abc %1$2.-3d def %3$4.d ghi\n", 1, 2, 3));
printf("%s\n",
"printf(\"%1$*3$.*4$d %2$s\\n\", 3, \"foo\", 5, 6);");
PRINT_RESULT(printf("%1$*3$.*4$d %2$s\n", 3, "foo", 5, 6));
printf("%s\n",
"printf(\"%c %C %hn %% %c %C %n\\n\", \n"
" \'a\', L\'a\', &sn, \'b\', L\'b\', &n);");
PRINT_RESULT(printf("%c %C %hn %% %c %C %n\n", \
'a', L'a', &sn, 'b', L'b', &n));
printf("Value of sn is: %hd \n", sn);
printf("Value of n is: %d \n\n", n);
printf("%s\n",
"printf(\"%e %E %f %g %G\\n\", 2.3, 2.3, 2.3, 2.3, 2.3);");
PRINT_RESULT(printf("%e %E %f %g %G\n", 2.3, 2.3, 2.3, 2.3, 2.3));
printf("%s\n",
"printf(\"%Le %LE %Lf %Lg %LG\\n\", \n"
" (long double)2.3, (long double)2.3, (long double)2.3, \n"
" (long double)2.3, (long double)2.3);");
PRINT_RESULT(printf("%Le %LE %Lf %Lg %LG\n", \
(long double)2.3, (long double)2.3, (long double)2.3, \
(long double)2.3, (long double)2.3));
printf("%s\n",
"printf(\"%.3e %.3E %.3f %.3g %.3G\\n\", \n"
" 2.34567, 2.34567, 2.34567, 2.34567, 2.34567);");
PRINT_RESULT(printf("%.3e %.3E %.3f %.3g %.3G\n", \
2.34567, 2.34567, 2.34567, 2.34567, 2.34567));
printf("%s\n",
"printf(\"%.3e %.3E %.3f %.3g %.3G\\n\", \n"
" 12345.67/3, 12345.67/3, 12345.67/3, 12345.67/3, 12345.67/3);");
PRINT_RESULT(printf("%.3e %.3E %.3f %.3g %.3G\n", \
12345.67/3, 12345.67/3, 12345.67/3, 12345.67/3, 12345.67/3));
printf("%s\n",
"printf(\"%.3e %.3E %.3f %.3g %.3G\\n\", \n"
" -12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3);");
PRINT_RESULT(printf("%.3e %.3E %.3f %.3g %.3G\n", \
-12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3));
printf("%s\n",
"printf(\"%\\\'3e %\\\'3E %\\\'3f %\\\'3g %\\\'3G\\n\", \n"
" -12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3);");
PRINT_RESULT(printf("%\'e %\'3E %\'3f %\'3g %\'3G\n", \
-12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3, -12345.67/3));
}