将2d数组传递给函数时遇到问题.看看代码 - :
#include<stdio.h>
void display(int (*arr)[3],int i,int j,int length,int breadth) {
for(;i<length;i++){
for(;j<breadth;j++){
printf("%d ",arr[i][j]);
}
printf("\n");
}
}
void main() {
int arr[3][3]={{1,2,3},{4,5,6},{7,8,9}};
display(arr,0,0,3,3);
}
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时,我只能打印出2D数组的第一行.但是当不使用形式参数中的i和j而是将它们声明为display()函数中的局部变量时,一切正常.为什么我不能直接使用传递给函数的本地值?我在Visual Studio 2013中使用Visual C++命令行编译器.
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |