目的:解决堆栈溢出,野指针,内存泄露。
解决方法
[root@ test]# yum install libasan
[root@ test]# cat test.c
int main()
{
int array[10];
array[11] = 11;
return 0;
}
[root@ test]# gcc -fsanitize=address -O1 -fno-omit-frame-pointer -g -O0 test.c -o test
./test
=================================================================
==14020==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fffffffe3cc at pc 0x00000040121e bp 0x7fffffffe370 sp 0x7fffffffe350
WRITE of size 4 at 0x7fffffffe3cc thread T0
#0 0x40121d in main /home/wbq/test/test.c:6
#1 0x7ffff6fddb66 in __libc_start_main (/lib64/libc.so.6+0x25b66)
#2 0x401099 in _start (/home/wbq/test/test+0x401099)
Address 0x7fffffffe3cc is located in stack of thread T0 at offset 76 in frame
#0 0x401179 in main /home/wbq/te