fork download
  1. #include <stdio.h>
  2.  
  3. #define logh(x) printf(#x": 0x%08x\n",x)
  4.  
  5. typedef unsigned char byte;
  6.  
  7. class A {
  8. public:
  9. A();
  10. byte *getBufferAddress() { return buffer; };
  11. byte *getBuffer();
  12. private:
  13. byte *buffer;
  14. };
  15. A::A() {
  16. buffer = new byte[1024];
  17. }
  18. byte *A::getBuffer() {
  19. byte bs[1024];
  20. //copy(bs, buffer);
  21. logh(bs);
  22. return bs;
  23. }
  24.  
  25. int main() {
  26. A *a = new A();
  27. A b;
  28.  
  29. logh(a->getBufferAddress());
  30. logh(a->getBuffer());
  31. logh(b.getBufferAddress());
  32. logh(b.getBuffer());
  33.  
  34. delete a;
  35.  
  36. return 0;
  37. }
Success #stdin #stdout 0s 3472KB
stdin
Standard input is empty
stdout
a->getBufferAddress(): 0x092ff018
bs: 0xbfa71770
a->getBuffer(): 0xbfa71770
b.getBufferAddress(): 0x092ff420
bs: 0xbfa71770
b.getBuffer(): 0xbfa71770