// 解答2.1 size.c // 最大値と最小値を求める #include #include void short_int_minmax() { short int x,old_x; //最小値 x = old_x = -1; while (old_x > --x) { old_x = x; } printf("min=%d, ", old_x); //最大値 x = old_x = 1; while (old_x < ++x) { old_x = x; } printf("max=%d\n", old_x); } void short_int_minmax_fast() { int b = sizeof(short int); int d = 1<<(b*8-1); printf("min=%d, ", -d); printf("max=%d\n", d-1); } void printsize() { printf("sizeof(char)=%d\n", sizeof(char)); printf("sizeof(short int)=%d\n", sizeof(short int)); printf("sizeof(int)=%d\n", sizeof(int)); printf("sizeof(long int)=%d\n", sizeof(long int)); printf("sizeof(long long int)=%d\n", sizeof(long long int)); printf("sizeof(pointer)=%d\n", sizeof(void*)); } int main() { short_int_minmax(); short_int_minmax_fast(); printsize(); }