我在第5行的if语句条件中解除引用2D动态数组的问题。
typedef char* CharArrayPtr;
void reserveSeat(CharArrayPtr *m, char row, char seatLetter){
for(int j = 1; j < 5; j++){
if(m[row - 1][j] == seatLetter)
m[row - 1][j] = 'X';
}
}
我已尝试将*放在前面,但我收到此错误消息:
间接需要指针操作数(&#39; int&#39;无效)
提前感谢任何帮助。
答案 0 :(得分:-2)
如果您打算按操作员*取消引用2D数组,请尝试以下操作。
typedef char* CharArrayPtr;
void reserveSeat(CharArrayPtr *m, char row, char seatLetter){
for(int j = 1; j < 5; j++){
//if(m[row - 1][j] == seatLetter)
if( *( (char*)m + (row - 1)*5 + j ) == seatLetter)
m[row - 1][j] = 'X';
}
}