#include int main() { // signed char sclow, schigh; // sclow=((unsigned char)(0-1)./2)+1; // schigh=((unsigned char)(0-1)./2); // printf("low is %hhd, high is %hhd\n", sclow, schigh); //%hhu unsigned half half //%hu unsigned half int //%u unsigned int //%lu unsigned long int //%llu unsigned long long int //unsigned half half int unsigned char a=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "a address: 0x%X\n",&a); fprintf(stdout, "a contains: %hhu\n",a); a=a-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "a address: 0x%X\n",&a); fprintf(stdout, "a contain: %hhu\n",a); fprintf(stdout, "The size of an unsigned char is %hhu bytes\n",sizeof(a)); //unsigned half int unsigned short int b=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "b address: 0x%X\n",&b); fprintf(stdout, "b contains: %hu\n",b); b=b-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "b address: 0x%X\n",&b); fprintf(stdout, "b contain: %hu\n",b); fprintf(stdout, "The size of an unsigned short int is %hu bytes\n",sizeof(b)); //unsigned int unsigned int c=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "c address: 0x%X\n",&c); fprintf(stdout, "c contains: %u\n",c); c=c-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "c address: 0x%X\n",&c); fprintf(stdout, "c contain: %u\n",c); fprintf(stdout, "The size of an unsigned int is %u bytes\n",sizeof(c)); //unsigned long int unsigned long int d=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "d address: 0x%X\n",&d); fprintf(stdout, "d contains: %lu\n",d); d=d-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "d address: 0x%X\n",&d); fprintf(stdout, "d contain: %lu\n",d); fprintf(stdout, "The size of an unsigned long int is %lu bytes\n",sizeof(d)); //unsigned long long int unsigned long long int e=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "e address: 0x%X\n",&e); fprintf(stdout, "e contains: %llu\n",e); fprintf(stdout, "The size of an unsigned long long int is %llu bytes\n",sizeof(e)); //signed half half int signed char f=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "f address: 0x%X\n",&f); fprintf(stdout, "f contains: %hhd\n",f); f=f-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "f address: 0x%X\n",&f); fprintf(stdout, "f contain: %hhd\n",f); fprintf(stdout, "The size of an signed char is %hhd bytes\n",sizeof(f)); //signed half int signed short int g=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "g address: 0x%X\n",&g); fprintf(stdout, "g contains: %hd\n",g); g=g-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "g address: 0x%X\n",&g); fprintf(stdout, "g contain: %hd\n",g); fprintf(stdout, "The size of an signed short int is %hd bytes\n",sizeof(g)); //signed int signed int h=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "h address: 0x%X\n",&h); fprintf(stdout, "h contains: %d\n",h); h=h-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "h address: 0x%X\n",&h); fprintf(stdout, "h contain: %d\n",h); fprintf(stdout, "The size of an signed int is %d bytes\n",sizeof(h)); //signed long int signed long int i=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "i address: 0x%X\n",&i); fprintf(stdout, "i contains: %ld\n",i); i=i-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "i address: 0x%X\n",&i); fprintf(stdout, "i contain: %ld\n",i); fprintf(stdout, "The size of an signed long int is %ld bytes\n",sizeof(i)); //signed long long int signed long long int j=0; fprintf(stdout, "Before:\n-------\n"); fprintf(stdout, "j address: 0x%X\n",&j); fprintf(stdout, "j contains: %lld\n",j); j=j-1; fprintf(stdout, "After:\n------\n"); fprintf(stdout, "j address: 0x%X\n",&j); fprintf(stdout, "j contain: %lld\n",j); fprintf(stdout, "The size of an signed long long int is %lld bytes\n",sizeof(j)); return(0); }