对不起,这必须在某个地方回答,但我还没有找到。
我有一个代码:
const int * tableCards[9];
int hand1card1 = 0;
tableCards[0] = & hand1card1;
int hand1card2 = 1;
tableCards[1] = & hand1card2;
int * flop1 = & tableCard[0];
tableCards[2] = flop1;
cout << * flop1 << endl;
cout << * tableCards[2] << endl;
flop1++;
cout << * flop1 << endl;
cout << * tableCards[2] << endl;
tableCard[48] is an array of pointers to ints
此代码有效,但我想更改该行tableCards[2] = flop1;
以使* tableCards[2]
return 指向的元素的实际值* flop1
。在这段代码中,*flop1 返回我想要的值,但 *tableCards[2] 在增加 flop1 后保持不变。
我认为这tableCards[2] = & (* flop1);
会将 *flop1 指向的值的地址分配给 int 指针 tableCards[2] 但是在增加 flop1 之后,tableCards[2] 的值保持不变。我不想在指针上使用指针数组而不是指针数组,因为所需的 4/9 值只是整数,而不是整数上的指针。
编辑:请注意,tableCards[9] 与 tableCard[48] 是不同的数组。而且,当我看到评论和答案时,这个问题一定会令人困惑。