xdata struct EEPROM {
unsigned int Last_Data; struct EEPROM *Node; };
struct EEPROM xdata * xdata p; p = (struct EEPROM xdata *)0x0FF6; if i will print the following statement printf("Size of p = %d",(unsigned int)sizeof(*p));
then it will shows the 5,but actually it should show the 4 bytes
Why did you think 4?
Hm ... I can only guess.
I can also guess that the next question will be about some dynamic memory allocation/deallocation issue. Anyone want to bet ?