我一直收到错误:数组必须用大括号括起来的初始化器初始化
这是代码:
for (int i=1, seporated_words[0]=sentence[0]; sentence[i]!=' '; i++)
{
seporated_words[0]=seporated_words[0]+sentence[i];
}
cout << seporated_words[0];
}
有人知道我为什么会收到此错误吗?
最佳答案
这就是 C++ 的语法规则。 int i = 1, seporated_words[0]...
尝试定义两个变量 - 整数 i
和数组 seporated_words
,大小为数组 0。 = ...
被编译器视为所述数组的初始化,并且是不正确的(具有零大小的数组仍然不正确,但编译器是还没有报告)。
您应该在循环语句之前将 seporated_words
设置为所需的值 - 它似乎无论如何都在循环外部,或者使 i
成为外部变量,然后对其进行初始化在循环初始化器中与 seporated_words
一起。
顺便说一句,你打错了——拼写为separated
。
关于c++ - 为什么我不能在 for 循环的第一条语句中包含 2 个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41557075/