#include <stdio.h>
int main(void){
int a=10;
int *p=&a;
char c='a';
printf("Size of Int =%d\n",sizeof(a
)); printf("Size of Pointer =%d\n",sizeof(p
)); printf("Size of Char =%d\n",sizeof(c
)); printf("1.%d\n",sizeof(NULL
)); // Returns size of Pointer printf("2.%d\n",sizeof*NULL
); //Returns size of value pointer to by the Pointer. Same as Below. printf("3.%d\n",sizeof*(NULL
)); //Returns size of value that is pointer to by the Pointer. Null Pointer points to char. printf("4.%d\n",sizeof((int*)1)); //Returns size of Pointer that is pointer to value 1 printf("5.%d\n",sizeof(*(int*)1)); //Returns size of value pointed by the pointer. i.e Size of Integer 1.
printf("6.%d\n", sizeof*(1?NULL
:(int*)1)); printf("7.%d\n", sizeof*(0?NULL
:(int*)1)); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbih2b2lkKXsKICAgIGludCBhPTEwOwogICAgaW50ICpwPSZhOwogICAgY2hhciBjPSdhJzsKICAgIHByaW50ZigiU2l6ZSBvZiBJbnQgPSVkXG4iLHNpemVvZihhKSk7CiAgICBwcmludGYoIlNpemUgb2YgUG9pbnRlciA9JWRcbiIsc2l6ZW9mKHApKTsKICAgIHByaW50ZigiU2l6ZSBvZiBDaGFyID0lZFxuIixzaXplb2YoYykpOwpwcmludGYoIjEuJWRcbiIsc2l6ZW9mKE5VTEwpKTsgICAvLyBSZXR1cm5zIHNpemUgb2YgUG9pbnRlcgpwcmludGYoIjIuJWRcbiIsc2l6ZW9mKk5VTEwpOyAvL1JldHVybnMgc2l6ZSBvZiB2YWx1ZSBwb2ludGVyIHRvIGJ5IHRoZSBQb2ludGVyLiBTYW1lIGFzIEJlbG93LgpwcmludGYoIjMuJWRcbiIsc2l6ZW9mKihOVUxMKSk7IC8vUmV0dXJucyBzaXplIG9mIHZhbHVlIHRoYXQgaXMgcG9pbnRlciB0byBieSB0aGUgUG9pbnRlci4gTnVsbCBQb2ludGVyIHBvaW50cyB0byBjaGFyLgpwcmludGYoIjQuJWRcbiIsc2l6ZW9mKChpbnQqKTEpKTsgLy9SZXR1cm5zIHNpemUgb2YgUG9pbnRlciB0aGF0IGlzIHBvaW50ZXIgdG8gdmFsdWUgMQpwcmludGYoIjUuJWRcbiIsc2l6ZW9mKCooaW50KikxKSk7IC8vUmV0dXJucyBzaXplIG9mIHZhbHVlIHBvaW50ZWQgYnkgdGhlIHBvaW50ZXIuIGkuZSBTaXplIG9mIEludGVnZXIgMS4KCnByaW50ZigiNi4lZFxuIiwgc2l6ZW9mKigxP05VTEw6KGludCopMSkpOwpwcmludGYoIjcuJWRcbiIsIHNpemVvZiooMD9OVUxMOihpbnQqKTEpKTsKcmV0dXJuIDA7Cgp9Cg==