Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Apr 30th, 2012  |  syntax: None  |  size: 0.71 KB  |  hits: 13  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Pointer data types in C
  2. int* ptr;
  3.        
  4. printf("%#xn%#xn%#xn", ptr, ptr+1, ptr+2);
  5.        
  6. some address
  7. some address + 4bytes
  8. some address + 8bytes
  9.        
  10. some address
  11. some address + 2bytes
  12. some address + 4bytes
  13.        
  14. (T *)((char *)ptr + n*sizeof(T))
  15.        
  16. int* ptr;
  17. printf("%#xn%#xn%#xn", ptr, ptr+1, ptr+2);
  18.        
  19. ptr --+
  20.       |
  21.       v
  22.       +---------+---------+---------+
  23.       |   int   |   int   |    int  |
  24.       +---------+---------+---------+
  25.         4 bytes   4 bytes   4 bytes
  26.        
  27. unsigned int* ptr;
  28. printf("%#xn%#xn%#xn", ptr, ptr+1, ptr+2);
  29.        
  30. ptr --+
  31.       |
  32.       v
  33.       +---------+---------+---------+
  34.       |unsigned | unsigned|unsigned |
  35.       +---------+---------+---------+
  36.         2 bytes   2 bytes   2 bytes