我想声明一个二维数组并为其赋值,而不运行 for 循环。
我认为我可以使用以下想法
int array[5] = {1,2,3,4,5};
这也可以很好地初始化二维数组。但显然我的编译器不喜欢这样。
/*
1 8 12 20 25
5 9 13 24 26
*/
#include <iostream.h>
int main()
{
int arr[2][5] = {0}; // This actually initializes everything to 0.
arr [1] [] = {1,8,12,20,25}; // Line 11
arr [2] [] = {5,9,13,24,26};
return 0;
}
J:\CPP\Grid>bcc32.exe Grid.cpp
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
Grid.cpp:
Error E2188 Grid.cpp 11: Expression syntax in function main()
Error E2188 Grid.cpp 12: Expression syntax in function main()
Warning W8004 Grid.cpp 14: 'arr' is assigned a value that is never used in funct ion main()
* 2 errors in Compile *
请帮忙看看用我的一组值初始化二维数组的正确方法是什么。
最佳答案
像这样:
int main()
{
int arr[2][5] =
{
{1,8,12,20,25},
{5,9,13,24,26}
};
}
这应该包含在您的 C++ 教科书中:您使用的是哪一本?
无论如何,最好考虑使用 std::vector
或一些现成的矩阵类,例如来自 Boost。
关于c++ - 二维数组值 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4981197/