我有这个代码:
#include <iostream>
int tabela[1];
tabela[0] = 1;
int main(){
std::cout << tabela[0];
std::cin.get();
return 0;
}
它不想工作。我的编译器说““tabela”没有命名类型”。 但是,如果我这样做:
#include <iostream>
int tabela[1];
int main(){
tabela[0] = 1;
std::cout << tabela[0];
std::cin.get();
return 0;
}
它有效。有人能解释一下为什么吗?提前致谢。
最佳答案
在最外层,C++ 文件是一系列声明。 tabela[0] = 1;
不是声明 - 它是一个语句(特别是表达式语句)。然而,函数体是一系列语句,因此将此行放在 main
(或任何其他函数)的主体内是可以的。
有些语句是声明(称为声明语句),但通常它们不是。
关于c++ - 无法在 C++ 中为全局数组赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26026799/