gpt4 book ai didi

c++ - 为什么在 C++ 上循环数组时会出现奇怪的字符

转载 作者:行者123 更新时间:2023-12-03 18:14:35 25 4
gpt4 key购买 nike

这是我的主要功能:

string a[18] = {
"1", " " ,"2", " ", "3", "\n",
"4", " " ,"5", " ", "6", "\n",
"7", " " ,"8", " ", "9", "\n" };

for (int x = 0; x <= 18; x++)
{
cout << a[x];
}

输出是这样的:

1 2 3
4 5 6
7 8 9
\�V�W(SV��8\�V������

我是否错误地循环了数组?

PS:我在mac上

最佳答案

如果您有一个包含 18 元素的数组,则唯一有效的索引是 0 .. 17

您需要将循环更改为:

for (int x = 0; x < 18; ++xx)
{
cout << a[x];
}

否则,如果您尝试索引 a[18],则会在循环的最后一次迭代中调用未定义的行为。

关于c++ - 为什么在 C++ 上循环数组时会出现奇怪的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61584236/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com