#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int * ha= new int[3];
ha[0]=1;
ha[1]=2;
ha[2]=3;
cout<<ha[0];
ha=ha+1;
cout<<ha[0];
delete []ha;
return 0;
}
//为什么不能ha=ha+1,导致了core dump. 特殊的地址运算理论上应该可以的。
*** glibc detected *** ./C++: munmap_chunk(): invalid pointer: 0x0804a010 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6(cfree+0x1bb)[0xb7cf4f5b]
/usr/lib/libstdc++.so.6(_ZdlPv+0x21)[0xb7eb3d11]
/usr/lib/libstdc++.so.6(_ZdaPv+0x1d)[0xb7eb3d6d]
./C++(__gxx_personality_v0+0x1aa)[0x80486e6]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xdc)[0xb7c9febc]
./C++(__gxx_personality_v0+0x35)[0x8048571]
======= Memory map: ========
08048000-08049000 r-xp 00000000 08:12 9109848 /home/hansgong/projects/C++/bin/Debug/C++
08049000-0804a000 rw-p 00000000 08:12 9109848 /home/hansgong/projects/C++/bin/Debug/C++
0804a000-0806b000 rw-p 0804a000 00:00 0 [heap]
b7c89000-b7c8a000 rw-p b7c89000 00:00 0
b7c8a000-b7dc5000 r-xp 00000000 08:13 7750914 /lib/tls/i686/cmov/libc-2.5.so
b7dc5000-b7dc6000 r--p 0013b000 08:13 7750914 /lib/tls/i686/cmov/libc-2.5.so
b7dc6000-b7dc8000 rw-p 0013c000 08:13 7750914 /lib/tls/i686/cmov/libc-2.5.so
b7dc8000-b7dcb000 rw-p b7dc8000 00:00 0
b7dcb000-b7dd6000 r-xp 00000000 08:13 7716928 /lib/libgcc_s.so.1
b7dd6000-b7dd7000 rw-p 0000a000 08:13 7716928 /lib/libgcc_s.so.1
b7dd7000-b7dd8000 rw-p b7dd7000 00:00 0
b7dd8000-b7dfd000 r-xp 00000000 08:13 7750922 /lib/tls/i686/cmov/libm-2.5.so
b7dfd000-b7dff000 rw-p 00024000 08:13 7750922 /lib/tls/i686/cmov/libm-2.5.so
b7dff000-b7ede000 r-xp 00000000 08:13 1820589 /usr/lib/libstdc++.so.6.0.8
b7ede000-b7ee1000 r--p 000de000 08:13 1820589 /usr/lib/libstdc++.so.6.0.8
b7ee1000-b7ee3000 rw-p 000e1000 08:13 1820589 /usr/lib/libstdc++.so.6.0.8
b7ee3000-b7ee9000 rw-p b7ee3000 00:00 0
b7efb000-b7efe000 rw-p b7efb000 00:00 0
b7efe000-b7f17000 r-xp 00000000 08:13 7716885 /lib/ld-2.5.so
b7f17000-b7f19000 rw-p 00019000 08:13 7716885 /lib/ld-2.5.so
bf90c000-bf922000 rw-p bf90c000 00:00 0 [stack]
ffffe000-fffff000 r-xp 00000000 00:00 0 [vdso]
13Aborted (core dumped)
-