
正文
c语言数组常量不能改变,c语言数组常量不能改变吗
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
C语言中为什么常量和表达式不能进行自增自减运算?
这是c语言设计之初就规定的,常量不能自动递增,如果能自动递增就不叫常量了,就叫变量了。
自增、自减运算符只能作用于变量,而不能作用于常量或表达式。
在c语言中,并不是所有变量都可以使用自增自减操作符;可以使用自增自减操作符的数据类型有:int、float、double 、char、long。自增(++) :将变量的值加1,分前缀式(如++i) 和后缀式(如i++) 。
相关问答
Q1: ...代表数组的起始地址,是一个常量,只可引用不能改变。这里指的a是一...
1、一个数组,也就是一列数,总要有个开头吧,这个开头就是数组的起始地址,可以标记为aa是不能改变的,相当于dim b as integer 内存中就有了一小块空间,叫做b,b能放整数要叫b就叫b,不能叫c叫d。
2、理解为一个指针,该指针指向数组的第一个元素,类型与数组类型相同,指针本身存储的是数组的第一个元素的数组。举例 对于 char a[10]a的内容是一个地址,也就是a[0]的地址;在定义a[10]之后a为一个表示地址的常量。
3、选A,数组的首地址。在C语言程序中,数组名表示的是“数组首个元素的地址,而首个元素是int类型”。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。
4、整个数组是以首地址开头的一块连续的内存单元。如有字符数组char c[10],设数组c的首地址为2000,也就是说c[0]单元地址为2000。则数组名c就代表这个首地址。
5、是一个常量不能够改变,这是错误的主要原因,如果能改变也是a[0]的地址不会是a[1]的地址。p+1,a+1,++p(先进行自加的操作再取值,所以可以表示a[1]的地址),所以a++不对,所以选择答案C。
6、C语言中,数组名是一个不可变的指针常量,不能对它进行加、减和赋值运算。在C语言中规定,数组名是代表该数组的首地址且符合标识符书写规定的变量标识符。不能对它进行加、减和赋值运算。
Q2: 关于C语言常量问题!!!
C语言里面的常量是指不会变化的常数或编码,例如圆周率14就可以定义为一个常量。
C语言中,不合法的字符常量是“A、\xff”,因为这虽然属于ASCII码字符,但是“ff”超出了ASCII码最大的“7f”,所以不合法。“B、\65”属于ASCII码字符,“C、&”属于普通字符,“D\028”属于ASCII码字符。
A、合法,小数常量:数字序列,可选,数字序列。B、01aa不合法,并不代表字符a。C、.e5不合法.C语言语法规定,字母e或E之前必须要有数字,且e或E后面的指数必须为整数。符号常量:用标示符代表一个常量。
C语言的常量有整数常量,实型常量,字符常量,符号常量等。整数常量 整数常量是指直接实用的整形常数,又称整形常数或者整数,例如,1,-9等。整数常量可以是长整形、短整型、符号整型和无符号整型。
首先要明白C语言的常量表达什么?我们才能了解它的问题是什么:常量:其值不会发生改变的量,称为常量。它们可以和数据类型接合起来分类。
Q3: C语言里为什么字符指针变量指向的字符串常量中的内容是不可取代的?
指向字符串常量的话,这段常量字符串是存储在静态存储区的,内容不能修改。
本身默认的就是一个字符串常量,他的值不容修改,p只是一个指针,执行该字符串的首地址,对该地址的值指向的地址空间的值的改变也是不允许的。
第7行有问题:字符指针变量指向的字符串常量中的内容是不可以被取代的。所以这条语句是非法的。
数组名是常量指针,所以指针不能再指向别处(即改变指向)。这个问题中,p是普通指针,所以可以改变指向;p指向的内容是由malloc申请的自由空间,所以它们的内容肯定是能够改变的,否则申请这个空间就没有多少意义了。
c语言数组常量不能改变的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言数组常量不能改变吗、c语言数组常量不能改变的信息别忘了在本站进行查找喔。







