
Untitled
By: a guest on
Apr 30th, 2012 | syntax:
None | size: 0.71 KB | hits: 13 | expires: Never
Pointer data types in C
int* ptr;
printf("%#xn%#xn%#xn", ptr, ptr+1, ptr+2);
some address
some address + 4bytes
some address + 8bytes
some address
some address + 2bytes
some address + 4bytes
(T *)((char *)ptr + n*sizeof(T))
int* ptr;
printf("%#xn%#xn%#xn", ptr, ptr+1, ptr+2);
ptr --+
|
v
+---------+---------+---------+
| int | int | int |
+---------+---------+---------+
4 bytes 4 bytes 4 bytes
unsigned int* ptr;
printf("%#xn%#xn%#xn", ptr, ptr+1, ptr+2);
ptr --+
|
v
+---------+---------+---------+
|unsigned | unsigned|unsigned |
+---------+---------+---------+
2 bytes 2 bytes 2 bytes