私は次のコードを持っています:
#include <stdlib.h>
#include <stdio.h>
#define SIZE 100
int* arr;
main()
{
int i;
arr = (int*)malloc(SIZE*sizeof(int));
if (arr == NULL) {
printf("Could not allocate SIZE(=%d)", SIZE);
}
for (i=0; i<SIZE; i++) {
arr[i] = 0;
}
free(arr);
}
arr[10]
その配列要素がいつ変更されるかを監視して確認する必要はありません。
これどうやってするの?gdbは次のように言っています:
$ gcc -g main.c
$ gdb a.out
...
(gdb) watch arr[10]
Cannot access memory at address 0x28
無効なメモリを監視し、有効になったときにのみ停止するようにgdbに指示する方法はありますか?
PS:gdbバージョン6.0、6.3、6.4、6.6、6.8、7.0、7.1があります
ありがとう