diff options
Diffstat (limited to 'cpp/c.c')
-rw-r--r-- | cpp/c.c | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/cpp/c.c b/cpp/c.c deleted file mode 100644 index 03b3ee3..0000000 --- a/cpp/c.c +++ /dev/null @@ -1,88 +0,0 @@ -#include <stdio.h> -#include <errno.h> - -#if __STDC__ == (1UL) -#define strong_alias(Y,X) asm("export _" #X, "_" #X " = _" #Y ) -#else -#define strong_alias(Y,X) asm("export _" "X", "_" "X" " = _" "Y" ) -#endif - -#if 1 -# if __STDC__ -# define comb(x,y) x ## y -# warning Using Ansi combine -# elif __BCC__ -# define comb(x,y) x/**/y -# warning Using bcc combine -# else -# define comb(x,y) x/**/y -# warning Using K&R combine -# endif -#endif - -#define o define -#o signed unsigned -#o unsigned signed - -#ifdef signed -typedef signed char t_sc; -typedef comb(un,signed) char t_uc; - -char c; -t_sc sc; -t_uc uc; -#endif - -#pragma full optimise -strong_alias(main,zulu); -main() -{ - int i1, i2, i3; - - printf("sizeof(long double) = %d\n", sizeof(long double)); -#ifdef __GNUC__ - printf("sizeof(long float) = ERROR!\n"); - printf("sizeof(long long) = %d\n", sizeof(long long)); -#else - printf("sizeof(long float) = %d\n", sizeof(long float)); - printf("sizeof(long long) = ERROR!\n"); -#endif - printf("sizeof(double) = %d\n", sizeof(double)); - printf("sizeof(float) = %d\n", sizeof(float)); - - c = -6; - uc = -6; - sc = -6; - - printf("%ld, ", (long)c); - printf("%ld, ", (long)uc); - printf("%ld\n", (long)sc); - - printf("%d, ", c); - printf("%d, ", uc); - printf("%d\n", sc); - - i1 = c; i2 = uc; i3 = sc; - - printf("%d, ", i1); - printf("%d, ", i2); - printf("%d\n", i3); - - i1 = (char) 200 + (char) 50; - i2 = (t_uc) 200 + (t_uc) 50; - i3 = (t_sc) 200 + (t_sc) 50; - - printf("%d, ", i1); - printf("%d, ", i2); - printf("%d\n", i3); - - c = 200; uc = 200; sc = 200; - - i1 = c + (long) 50; - i2 = uc + (long) 50; - i3 = sc + (long) 50; - - printf("%d, ", i1); - printf("%d, ", i2); - printf("%d\n", i3); -} |