1、形式不同:
字符常量是单引号引起的一个字符;字符串常量是双引号引起的若干个字符。
2、含义不同:
字符常量相当于一个整型值,可以参加表达式的运算;字符串常量代表一个地址值(该字符串在内存中存放的位置)。字符常量可以赋值给字符变量,如"charb='a';",但不能把一个字符串常量赋给一个字符变量,同时也不能对字符串常量赋值。
3、占内存不同:
字符常量只占一个字节;字符串常量占若干个字节,(至少一个字符结束标志)。不占据任何存储空间属于指令的一部分,编译后不再更改。字符串常量是一对双引号括起来的字符序列。
扩展资料:
字符常量有两种:
一种是普通字符,即用单撇号括起来的一个字符,如'b','y',‘?’。字符常量在储存在计算机的储存单元中时,是以其代码(一般采用ASCII代码)储存的。
另一种是转义字符,即特殊字符常量。转移字符是C语言中表示字符的一种特殊形式,其含义是将反斜杠后面的字符转换成另外的意义。
另外还可以用字符的ASCII码表示,即用反斜符(\)开头,后跟字符的ASCII码,这种方法也称为转义序列表示法,具体方法是:有两种形式:
字符串常量与字符数组的关系:
在C语言中没有专门的字符串变量,如果想将一个字符串存放在变量中以便保存,必须使用字符数组,即用一个字符型数组来存放一个字符串,数组中每一个元素存放一个字符。例如“chara[10]="love".”
参考资料来源:
参考资料来源: