C语言数组可以定义为a[n]吗

为什么第一张图中如果n小于9运行是对的如果n大于9a[n][n]运行是错的,a[35][35]是对的第二张图中a[n]运行是对的... 为什么第一张图中如果n小于9运行是对的 如果n大于9a[n][n]运行是错的,a[35][35]是对的第二张图中a[n]运行是对的 展开
 我来答
匿名用户
2019-02-11
展开全部

有两个错误.

首先,c/c++中下标是以0开始的,所以如果你定义一个长度为10的数组S[10],那么访问范围为S[0],S[1],...,S[9].访问S[10]是错误的.

其次,不建议使用变量为下标定义数组.虽然有些编译器支持,但这是不标准的.使用常量来定义数组.

//错误的方式
int n = 10;
int a[n];

//正确的方式
int a[10];

#define N 10
int a[N];
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式