我打算问一个不同的问题,当我写下它的细节时,我解决了我的问题(有点):)
for (int i=0; i<wordLength + size; i++) {
letters_guessed[i] = ' ';
}
In here (int i) 将超出 letters_guessed 的容量 (例如:letters_guessed 的大小为 20,但 (int i) 将为 20,21,22,23 等等) 我的问题是,为什么那些超出 letters_guessed 容量的正在改变我的另一个名为 displayedchars 的数组?
我不确定,但我的猜测是它正在发生,因为 letters_guessed 本身是一个指针,而 displayedchars 本身是另一个指针,并且 int i 值继续到下一个值。 Stack 总是一个接一个地保存我的数据吗?
对我来说,如果 int i 超出了数组的限制,letters_guessed[i] 应该给出错误。为什么不是这样?