C语言中字符常量与字符串常量有什么区别
字符常量:在C语言中一个字符常量代表ASCII字符集中的一个字符,在程序中用单引号把一个字符括起来作为字符常量。大小写字母代表不同的字常量;单引号中的空格也是;字符常量只能包含一个字符;字符常量只能用但括号括起来。下面是常用字符的SACII
’a’–’z’ 97——122
’A’–’Z’ 65——-90
’0’—’9’ 48——-57
字符串常量:字符串常量是用双引号括起来的,在C语言中系统会在每个字符串的最后自动加入一个’\0’作为字符串的结束标志。
区别:’Z’是字符常量,占一个字节;“Z“是字符串常量,占两个字节,其中一个放’\0’。
它们两个的用法都明白了,区别就知道了
字符常量与字符串常量的区别是什么
1、形式不同:
字符常量是单引号引起的一个字符;字符串常量是双引号引起的若干个字符。
2、含义不同:
字符常量相当于一个整型值,可以参加表达式的运算;字符串常量代表一个地址值(该字符串在内存中存放的位置)。字符常量可以赋值给字符变量,如“char b=’a’;“,但不能把一个字符串常量赋给一个字符变量,同时也不能对字符串常量赋值。
3、占内存不同:
字符常量只占一个字节;字符串常量占若干个字节,(至少一个字符结束标志)。不占据任何存储空间属于指令的一部分,编译后不再更改。字符串常量是一对双引号括起来的字符序列。
扩展资料:
字符常量有两种:
一种是普通字符,即用单撇号括起来的一个字符,如’b’ ,’y’,‘?’。字符常量在储存在计算机的储存单元中时,是以其代码(一般采用ASCII代码)储存的。
另一种是转义字符,即特殊字符常量。转移字符是C语言中表示字符的一种特殊形式,其含义是将反斜杠后面的字符转换成另外的意义。
另外还可以用字符的ASCII码表示,即用反斜符(\)开头,后跟字符的ASCII码,这种方法也称为转义序列表示法,具体方法是:有两种形式:
字符串常量与字符数组的关系:
在C语言中没有专门的字符串变量,如果想将一个字符串存放在变量中以便保存,必须使用字符数组,即用一个字符型数组来存放一个字符串,数组中每一个元素存放一个字符。例如“char a=“love“.”
参考资料来源:百度百科–字符常量
参考资料来源:百度百科–字符串常量
字符常量与字符串常量有什么区别
1、形式不同:
字符常量是单引号引起的一个字符;字符串常量是双引号引起的若干个字符。
2、含义不同:
字符常量相当于一个整型值,可以参加表达式的运算;字符串常量代表一个地址值(该字符串在内存中存放的位置)。字符常量可以赋值给字符变量,如“char b=’a’;“,但不能把一个字符串常量赋给一个字符变量,同时也不能对字符串常量赋值。
3、占内存不同:
字符常量只占一个字节;字符串常量占若干个字节,(至少一个字符结束标志)。不占据任何存储空间属于指令的一部分,编译后不再更改。字符串常量是一对双引号括起来的字符序列。
字符常量有两种:
一种是普通字符,即用单撇号括起来的一个字符,如’b’ ,’y’,‘?’。字符常量在储存在计算机的储存单元中时,是以其代码(一般采用ASCII代码)储存的。
另一种是转义字符,即特殊字符常量。转移字符是C语言中表示字符的一种特殊形式,其含义是将反斜杠后面的字符转换成另外的意义。
什么是字符常量
字符常量是指用一对单引号括起来的一个字符。如‘a’,‘9’,‘!’。字符常量中的单引号只起定界作用并不表示字符本身。字符常量的值,就是在ASCII编码表中的值。是个从0—127之间的整数。因此字符常量可以作为整型数据来进行运算。
字符常量只能用英文单引号括起来,不能用双引号。如“Y”不是一个字符常量,而是一个字符串。而且单引号内的大小写字符代表不同的字符常量,如‘Y’、‘y’是两个不同的字符常量。
扩展资料:
字符常量的分类
1、普通的字符常量
用单撇号括起来的一个字符,在内存中占一个字节。字符常量只包括一个字符,如‘AB’是不合法的。单撇号是定界符,而不属于字符常量的一部分。
2、转义字符常量
除字符常量外,C++还允许用一种特殊形式的字符常量,就是以“\”开头的字符序列。例如,’\n’代表一个“换行”符。转义字符虽然包含两个或多个字符,但它只代表一个字符。编译系统在见到字符“\”时,会接着找它后面的字符,把它处理成一个字符在内存中只占一个字节。
参考资料来源:百度百科-字符常量
什么是字符串常量和字符串变量啊
字符串常量是一对双引号括起来的字符序列。字符常量可以赋值给字符变量,如“char b=’a’;“,但不能把一个字符串常量赋给一个字符变量,同时也不能对字符串常量赋值。
字符串变量是存放字符常量的变量,其取值是字符常量,即单个字符。字符变量的类型说明符是char。每个字符变量被分配一个字节的的内存空间,因此只能存放一个字符。并且字符值是以ASCⅡ码的形式存放在变量的内存单元之中的。
扩展资料
字符串常量的存储:
字符串中的字符依次存储在内存中一块连续的区域内,并且把空字符‘ \0’自动附加到字符串的尾部作为字符串的结束标志。故字符个数为n的字符串在内存中应占(n+1)个字节。可以输出字符串,例如:
printf(“how do you do.“);
字符串变量的说明:
1、字符变量在内存中占一个字节。
2、在内存中,是把字符对应的ASCII码值放到存储单元中。
3、字符型数据与整型数据之间可以通用。
参考资料来源:百度百科——字符串常量
百度百科——字符变量
什么是字符串常量
字符串常量是由一对双引号括起的字符序列。例如: “CHINA“ , “C program” ,
“$12.5“ 等都是合法的字符串常量。
字符串常量和字符常量是不同的量。它们之间主要有以下区别:
1) 字符常量由单引号括起来,字符串常量由双引号括起来。
2) 字符常量只能是单个字符,字符串常量则可以含一个或多个字符。
3) 可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予一个字符变
量。在C语言中没有相应的字符串变量。这是与BASIC 语言不同的。但是可以用
一个字符数组来存放一个字符串常量。在数组一章内予以介绍。
4) 字符常量占一个字节的内存空间。字符串常量占的内存字节数等于字符串中字节数
加1。增加的一个字节中存放字符“\0“ (ASCII 码为0)。这是字符串结束的标志。
例如:字符串 “C program“ 在内存中所占的字节为:
C p r o g r a m \0
字符常量’a’和字符串常量“a“虽然都只有一个字符,但在内存中的情况是不同的。’a’在内存中占一个字节,可表示为:a“a“在内存中占二个字节,可表示为:a \0
字符常量和字符串常量到底有什么区别啊
字符常量代表一个不可变化的固定数值值,这个字符出现就代表这个数值;字符变量可以存放定义类型的数值,而这个数值是可以变化的。
一、字符常量:
(1).定义:用单引号括起来的单个字符或转义字符\
(2)转义字符 反斜线后面跟着字符或一个代码值表示
二、字符常量与字符串常量
(1)字符串常量不允许赋值给字符常量;
例如char a=”a”;错误字符串只能由指针数组表示 其他不能表示字符串;
(2) 字符’1’和整数1是不同的概念:字符’1’只是代表一个形状为’1’的符号,需要时按原样输出,在内存中以ASCII码形式存储,占1个字节。整数1是以整数存储方式(二进制补码方式)存储的,占2个或4个字节。
(3) 字符型变量在内存中占一个字节,由于存储的是字符的二进制ASCII码,与整型数据存储方式类似,字符型数据和整型数据可以相互运算。
字符常量有什么用
首先我想说的是,这些东西只是存在书本中的一些定义,你不用太在意这些字眼,只要了解C/C++的实质就行了。至于那些咬文嚼字的东西就可以放一边了。
接下在说说你的问题
…..
所谓的常量,与变量不同,它就是不会变的量。
比如:const
int
A
=
5;
这个A就是一个常量。它的值是不能被改变的,永远是5。所以不能有A
=
8这样的赋值操作。
理解了常量的概念,接着就可以很好理解
字符常量
与
字符串常量
,显然这两个都是常量。那么他们就都和上面那个A一样的性质。不同的是数据类型不同。字符常量是数据类型为char型的常量,字符串常量是数据类型为char型字符串的常量。比如:const
char
A
=
’a’;
const
char
B
=
“Hello
World!“;
这里A是字符常量,B是字符串常量。
常量标识符自然就是上面的A和B两个标识符。记住,被你取了名字来表示常量的那个单词就是常量标识符,就像上面的A和B。
至于符号常量,应该就是常量的全称吧。这个我还真不记得了。这些东西你到真正写程序的时候根本用不到,你重点要知道const的方法和常量的实质。