阵列:标识符“array”未定义
问题描述:
每次我在Visual Studio 2015中运行此代码时,它都会显示错误标识符“treasureLocation”未定义......我做错了什么?阵列:标识符“array”未定义
int main()
{
int gridSize [2];
int gridX = 0;
int gridY = 0;
int treasureLoaction[2];
int end;
std :: cout << "what size grid would you like to play on?" << std :: endl;
std :: cin >> gridSize [1];
std :: cin >> gridSize [2];
treasureLocation[1] = rand() % gridSize[1] + 1;
treasureLocation[2] = rand() % gridSize[2] + 1;
while (gridY < gridSize[2]) {
gridY++;
while (gridX < gridSize[1]) {
std::cout << "* ";
gridX++;
}
std::cout << "" << std::endl;
gridX = 0;
};
std::cout << treasureLoaction;
std::cin >> end;
return 0;
}
答
有一个错字
int treasureLoaction[2];
^^^^^^^^
考虑到,如果一个数组有n
元素则指数的有效范围为[0, n-1]
而且这种说法
std::cout << treasureLoaction;
不会按照您的想法输出数组的元素。
你可以在一个循环做到这一点,例如
for (int x : treasureLocation) std::cout << x << ' ';
std::cout << std::endl;
答
尝试通过数组迭代来打印它的内容是这样
for (int i = 0; i < your array length; i++) cout << array[i];
,除非你要打印的地址,并也看起来像你在宝物行为中有拼写错误。
'std :: cout drescherjm
'treasureLoaction!= treasureLocation',作为一个简单的印刷错误关闭。 – Jack