ポインタの配列である変数 'arr'の内容を取得する際に問題があります。 私は試しましたが、p *[email protected]
ですが、次のような出力があります:$1 = {0x603010, 0x603030}
。 どうすればよいですか?gdb - ポインタの配列の内容を表示する方法は?
int n, q;
scanf("%d %d", &n, &q);
int lastAnswer=0, index_size[n], *arr[n]; // <-- here
for(int i=0; i<n; i++)
index_size[i] = 0;
for(int i=0; i<n; i++) {
int *temp = malloc(sizeof(int)*n);
arr[i] = temp;
}
while(q--) {
int w, x, y, seq;
scanf("%d %d %d", &w, &x, &y);
if(w == 1) {
seq = ((x^lastAnswer) % n);
arr[seq][index_size[seq]++] = y;
}
else {
seq = ((x^lastAnswer) % n);
lastAnswer = y%n;
printf("%d\n", lastAnswer);
}
}
return 0;
かわいいプリンタを書くかもしれませんか?ポインタタイプのものを登録することができます... – o11c
https://stackoverflow.com/questions/14502236/gdb-how-to-view- a-pointer-like-an-array – sailfish009