#include <stdio.h> #include <float.h> int main(void) { printf("char = %ld\n", sizeof(char)); printf("short int = %ld\n", sizeof(short int)); printf("int = %ld\n", sizeof(int)); printf("long int = %ld\n", sizeof(long int)); printf("long long int = %ld\n", sizeof(long long int)); printf("float = %ld\n", sizeof(float)); printf("double = %ld\n", sizeof(double)); printf("long double = %ld\n", sizeof(long double)); printf("\n"); printf("float = %e\n", FLT_MAX); printf("double = %le\n", DBL_MAX); printf("long double = %Le\n", LDBL_MAX); return 0; } |
WinXP(32bit)+VS2010 | Linux(32bit)+gcc(4.7.1) | Linux(64bit)+gcc(4.9.2) |
char = 1 short int = 2 int = 4 long int = 4 long long int = 8 float = 4 double = 8 long double = 8 float = 3.402823e+038 double = 1.797693e+308 long double = 1.797693e+308 |
char = 1 short int = 2 int = 4 long int = 4 long long int = 8 float = 4 double = 8 long double = 12 float = 3.402823e+38 double = 1.797693e+308 long double = 1.189731e+4932 |
char = 1 short int = 2 int = 4 long int = 8 long long int = 8 float = 4 double = 8 long double = 16 float = 3.402823e+38 double = 1.797693e+308 long double = 1.189731e+4932 |