/* DataTypes.c */ #include "stdio.h" main() { /* Define variables */ float rf; double rd; long double rl; short is; int ii; long int il; long long int ill; unsigned int iu; /* Set variables */ rf = 1.23456789; rd = 1.23456789; rl = 1.23456789; is = 123; ii = 123; il = 123; ill = 123; iu = 123; /* Print variables */ /* More on formats: % man 3 printf */ /* "\n" - new line */ printf("\n Double \n"); /* Rounding ! */ /* "%.9g" results in all digits */ printf("rd_1 = %g \n", rd); printf("rd_2 = %.9f \n", rd); /* "%.9e" results in all digits */ printf("rd_3 = %e \n", rd); printf("\n Float \n"); /* Only 8 digits accurate in float */ printf("rf_1 = %.12g \n", rf); /* Better use less digits */ printf("rf_2 = %g \n", rf); printf("\n Long Double \n"); /* Error:: Wrong format specifier */ printf("rl_wrong = %.9g \n", rl); /* Right! Use "Lg" */ printf("rl_right = %.9Lg \n", rl); printf("\n Integer \n"); printf("ii = %d \n", ii); printf("iu = %d \n", iu); printf("is_1 = %d \n", is); printf("is_2 = %hd \n", is); printf("il_1 = %d \n", il); printf("il_2 = %ld \n", il); printf("ill_1 = %d \n", ill); printf("ill_2 = %ld \n", ill); printf("\n ################################ \n"); printf(" Size of Data Types: sizeof() \n\n"); printf("Size of short int: %d \n", sizeof(short int)); printf("Size of int: %d \n", sizeof(int)); printf("Size of unsigned int: %d \n", sizeof(unsigned int)); printf("Size of long int: %d \n", sizeof(long int)); printf("Size of long long int: %d \n", sizeof(long long int)); printf("\n"); printf("Size of float: %d \n", sizeof(float)); printf("Size of double: %d \n", sizeof(double)); printf("Size of long double: %d \n", sizeof(long double)); printf("\n"); }