我正在尝试在for循环中定义一个2D数组。这就是它的样子:
for (){
...
double x[y][z];
...
}
然后我调用一个函数:
abc(x)
......我收到了这个错误:
error: 'x' undeclared (first use in this function)
答案 0 :(得分:0)
在for
循环内声明的变量的范围仅限于for
循环,无法在for
循环之外访问。
如果您需要访问for
循环之外的变量,则应在for
循环之外声明它。
答案 1 :(得分:0)
您只能在x
循环范围内将abc
传递给您的函数for
,因为x
具有块范围。
具有块作用域的变量只能在该块内访问。超出其范围,对其他人来说是不可见的。