首页 > 试题广场 >

下列定义数组方法正确的有哪些( &nbs...

[单选题]
下列定义数组的方法正确的是(      )
  • #define N 2017 int arr[N]
  • #define N 2017 int arr[N*2]
  • int i=2017; int arr[i];
  • int arr[]={1};
D怎么错?
发表于 2019-10-19 21:29:17 回复(0)

A和B严格来说都不行,宏定义问题,D才是正确答案

发表于 2019-09-03 21:58:23 回复(0)
宏定义没有  ';'  A和B都是错的,变量不能指定数组的大小,所以C也是错的
发表于 2019-09-05 14:44:24 回复(2)
AB定义数组尾部都没有分号,宏定义不能和数组定义一行
发表于 2020-06-18 22:44:52 回复(0)
#define N 2017 ,是预编译过程,在编译前会把所有的N替换成2017,因此int arr[N]在编译前会被换成:int arr[2017];,N即常量2017,因此不会有错
后者的N*2、i 是变量,数组声明的时候,其元素个数只能是常量,不能是变量
发表于 2019-12-14 15:09:17 回复(0)
这种垃圾题都没人审核的吗
cd都是对的,若a算是有换行b也是对的
然而ab都没有换行
发表于 2019-12-06 10:07:59 回复(2)