struct ptr
{
int a;
char b;
int *p;
}abc;
what is d sizeof structure without using "sizeof" operator??
Answer Posted / pradeep
In Linux, its 12 bytes.
int a ------- 4 bytes
char b ------- 1 byte.
but as the next element is integer, it wont fit in the
remaining 3 bytes left after the "char b" occupies the first byte of the 4 byte chunk. so these 3 bytes wont be used for storing "int *p". these will be padded. next 4 bytes will be used for storing *p.
to prove it.
int size;
size = (&(abc.p) + sizeof(abc.p)) - &abc.a ;
printf("size = %d",size);
| Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
Why does not c have an exponentiation operator?
What is the auto keyword good for?
Why c is known as a mother language?
can any one please explain, how can i access hard disk(physical address)? it is possible by the use of far,near or huge pointer? if yes then please explain......
What are the differences between new and malloc in C?
What is mean by data types in c?
what is ur strangth & weekness
Differentiate Source Codes from Object Codes
What is the difference between malloc() and calloc() function in c language?
Explain what is a static function?
Where can I get an ansi-compatible lint?
Can we change the value of static variable in c?
What is ponter?
Write a program for Overriding.
Can you please explain the difference between malloc() and calloc() function?