字符串常量与字符常量

字符串常量是用一对双撇号括起来的字符序列;而字符常量是用一对单撇号括起来的单个字符。如'a'是字符常量,“a”是字符串常量。

那么‘a’和“a”有什么区别呢?

C语言编译系统在处理字符串时,在每一个字符串常量的结尾加上一个字符‘\0’,作为字符串结束的标志。‘\0’是一个ASCII码为0的字符,是“空操作字符”,它不引起任何控制操作,也不是一个可以显示的字符。如果有一个字符串“Hello World!”,实际上它在存储单元中的情况是:

Hello World!\0
在输出字符串时并不输出末尾上的‘\0’,从第一个字符开始逐个输出字符,知道遇到末尾的'\n',系统判断出字符串结束,停止输出。

注意,在写字符串的时候不必在末尾加'\n',否则会起到画蛇添足的作用。‘\n’是系统自己加上去的。因此对于字符串常量“a”,它实际上包含2个字符:‘a’和‘\0’;而字符常量‘a’只包含一个字符即‘a’。

在C语言中没有专门的字符串变量,不能讲一个字符串存放在一个变量中。如果想将一个字符串存放在内存中个,必须使用字符数组,即用一个字符型数组来存放一个字符串,数组中每一个元素存放一个字符。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值