2016-11-23 13 views
-2

Visual Studio 2015でこのコードを実行するたびに、エラー識別子 "treasureLocation"が定義されていません...何が間違っていますか?配列:識別子 "配列"は定義されていません

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; 

}

+0

'std :: cout << treasureLoaction;'配列ではできません。あなたはそれも間違っていますが。 – drescherjm

+1

'treasureLoaction!= treasureLocation'、単純な誤植として閉じます。 – Jack

答えて

2

タイプミス

int treasureLoaction[2]; 
      ^^^^^^^^ 

があり、配列はnの要素を持っているならば、インデックスの有効範囲は[0, n-1]

そして、この文

であることを考慮してください
std::cout << treasureLoaction; 

は、考えられるように配列の要素を出力しません。

例えば

for (int x : treasureLocation) std::cout << x << ' '; 
std::cout << std::endl; 
1

あなたはアドレスを印刷しようと、それされていない限り、この

for (int i = 0; i < your array length; i++) cout << array[i]; 

のようにその内容を印刷するために、配列を反復してみてあなたはループの中でそれを行うことができtreasureLoactionにスペルミスがあるようにも見えます。

関連する問題