1楼:畫扇悲風伤月夜
“”中间必须是整形常量或整形常量表达式。数组定义时,必须指定数组的大小,数组大小必须是整形常量表达式,不能是变量或者变量表达式错误例子:int n=10; int a[n]; int b[10.
3]; int c[n+10];
数组定义中的方括号[]是一个运算符,还是一个其他类型的符号?
2楼:矿工酱
这个最佳答案是错误的。
数组定义中的中括号就是表示它是个数组,属于语法范畴(就跟函数调用里面的逗号,语句后面的分号,还有语句块的大括号一样),不算运算符,不能更改和重载,例如 int a[10]或者int *a = new int[10]等。
但是c和c++语言里中括号还有个用法就是作为一个运算符,是一个叫做“数组下标运算符”的双目运算符,即a[b]。这个默认等价于*(a+b)。但是在你自己定义的类中,这个运算符是可以重载的,使之不等于*(a+b),这个时候这个运算符的意义就不是“数组下标”了,而是你自己定义的了,甚至可以像括号那样用。
3楼:精忠报国何须悔
选 d 一维数组的定义方式为: 类型说明符 数组名 [常量表达式] 注; 常量表达式中可以包括常量和符号常量,不能是变量。也就是说,c不允许对数组的大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值。
4楼:匿名用户
http://user.qzone.**.***/1749748955/blog/1451186852
c语言数组名后面那个中括号[ ]里可不可以是表达式?为什么
5楼:匿名用户
我觉得数组的【】括号中的一定是常量,否则在编译器无法设置内存空间。所以可以是表达式,但是应该是常量表达式,不能是变量。
6楼:淦海瑶
可以,但是要注意一点,
这个表达式返回值一定要是正整数或者零
其他的都是错误的
给你举个例子吧
如求一个数字字符串中数字出现的频率
char a[100];
int b[10]=;//计数数字出现的次数int i=0;
gets(a); //输入数字,否则有可能出错,因为b的下标超过9while(a[i])
b[a[i++]-'0']++; //这里a和b的下标都是表达式
a的下标是i++,是正整数或零
b的下标是a[i++]-'0'是a[i]中的数字的ascii码值减去0的ascii码值,是0~9
7楼:1個魜_等待
数组必须先分配内存空间才能使用,所以初始化的时候不能是表达式,但是却可以这样用:
int a[11]; for(int i = 10; i>5; i--) a[i-5] = 1;
8楼:周碧娇是我老婆
“”中间必须是整形常量或整形常量表达式。
数组定义时,必须指定数组的大小,数组大小必须是整形常量表达式,不能是变量或者变量表达式
错误例子:int n=10; int a[n]; int b[10.3]; int c[n+10];
9楼:匿名用户
可以是返回值为正整数的表达式
c语言中中括号什么意思?[ ]
10楼:9点说史
该中括号为数组标识。
int a[6];就是定义一个一维数组,这个数组名叫做 a ,共有
内6个元素;同理int b[6][6];就是定容
义一个二维数组,这个数组共有6*6个元素。
定义之后,就可以引用该数组的元素,但不能直接用 a[6] ,a此时包含的元素只有a[0],a[1],a[2],a[3],a[4],a[5]这6个。
c语言支持定义一系列相同连续的变量空间,其定义形式为type name[n];代表定义个数为n,每个元素类型均为type型的数组变量name。
在c中规定,数组元素的下标n是从0开始计数的,所以对于定义的a[100], 其合法的元素为a[0], a[1],.... , a[99]。
扩展资料
标识符(identifier)是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义。在计算机编程语言中,标识符是用户编程时使用的名字。
用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的关系。标识符通常由字母和数字以及其它字符构成。
11楼:哇哎西西
中括号为数组标识bai。
例如:放入4个整du数,就得分
zhi配dao4个int类型的内存空间:内int a[4];
这样,就在容内存中分配了4个int类型的内存空间,共 4×4=16 个字节,并为它们起了一个名字,叫a。
12楼:匿名用户
数组的下标
比如du你说zhi的
int a[6];
就是dao定内义一个一维数组容,这个数组名叫做 a ,共有6个元素同理int b[6][6]
就是定义一个二维数组,这个数组共有6*6个元素定义之后,就可以引用该数组的元素,但不能直接用 a[6] ,a此时包含的元素只有a[0],a[1],a[2],a[3],a[4],a[5]这6个
13楼:匿名用户
数组。表示有6个int型的数据,从a0到a5
14楼:匿名用户
定义数组a,数组中包含6个数
一个数组,后面加了个中括号,什么意思
15楼:司马刀剑
数据类型后面加中括号就是创建数组的意思。
比如 int anarray = new int[10];
c语言的数组的中括号中数字能否省略?什么时候可以省略? 5
16楼:匿名用户
在定义数组时同时初始化,括号中数字可省略,如:int a=;这个数组大小是5,范围是a[0]到a[4],但是如果你希望定义一个长度是10的数组,但只初始化前5个数据,这时候必须带上数字,如:int a[10]=;这时候a数组一共有10个数字,前5个是1到5,后5个是0
或者二维数组,可以省略行数,但不可以省略列数,如int a[4]=,,};这诗系统自动默认行数是3
还有就是形参中,可以省略一维数组的长度或者二维数组的行数,如:void fun(int a,int b[4])这个函数中第一个参数是一维数组,只要实参传来一个一维数组即可接收到,不需要长度完全一样,同理,第二个参数也是,只要传来一个列数为4的二维数组即可
大概就以上3中情况吧希望对你有帮助
17楼:匿名用户
int a=; 可以在定义的时候给出初始值。可省略。
int b[5]=; 同上,但是第二个不能省略。
a=3; 这样做就不对了,里面没有定位,不能省略。
b[2]=2; 同上,不能省略。
a[x]=3;这样做也对,但是要保证变量x的值正确。c不会自动给你查越界。你自己要小心。
18楼:倒霉熊
可以省略
例如:int a = ;
编译器会根据后面的元素的个数来确定数组的范围。
在参数传递中,可以写成 void fun(int a)这种形式,因为参数传递中已经退化为指针了,元素的个数需要其他参数确定。
要大体说什么时候可以省略,那就是你能够保证编译器能够知道你数组的元素个数才能省略。
19楼:匿名用户
所有元素都已罗列出来,可以省略行标:
如 int a[4][3]=;
可以省略为int a[3]=;
20楼:
c99标准以前:
声明时可以省略: extern int myarray;
定义时包含初始化可以省略:int myarray=;//根据初始化数组元素的多少而默认大小
形参中的数组不需要数字
c99标准:
可以用表达式确定数组大小: int myarray[*];//但只能是局部变量,而且goto语句将不能使用
21楼:匿名用户
作为参考变量的时候可以省略,或者对于数组同时声明和定义的时候也可以省略
c语言数组去掉了数组名后面的中括号是什么意思
22楼:酷月之心
数组名a是指针,指向数组的第一个数1,,即*a等于1
a后面的中括号是基址+变址的寻址方式,如a[0]是*(a+0)等于一个数1,那a[3]就是*(a+3)等于第四个数4
字符窜数组后面有两个中括号是什么意思
1楼 山水阿锐 您好,是这样的 1 string表示字符串类型,用string申明一个变量,这个变量就可以引用string类型的数据。 2 string表示你申请了一组类似步骤1中申请的变量。 3 string表示你申请了一组类似步骤2中申请的变量。 括号都占两个字符 5 2楼 你在英文状态下输入括...
高中数学这个符号的含义,高中数学那个符号什么意思怎么读还有∈
1楼 许华斌 应该是c补集 余集 2楼 时光旅人 表示两个集合,不过u一般表示全集 这题目的这个符号什么意思 高中数学 3楼 匿名用户 在数学中 所有 一词,叫做全称量词,用符号 表示 存在 一词,叫做存在量词,用符号 表示 在语句中含有短语 所有 每一个 任何一个 任意一个 一切 等都是在指定范围...
图中的数学符号怎么读,图中这个是哪个数学符号?怎么读?
1楼 匿名用户 这是一个希腊字母,读作克西 ksi , 希腊字母的读法 阿而法 贝塔 伽马 德尔塔 艾普西龙 截塔 艾塔 西塔 约塔 卡帕 兰姆达 米尤 纽 可系 奥密克戎 派 若 西格马 套 英文或拉丁字母 斐 喜 普西 欧米伽 图中这个是哪个数学符号?怎么读? 2楼 匿名用户 xi ksi 克西...