c 学习笔记之一 字符串常量

本文详细介绍了C语言中字符串常量的概念及其使用方式,包括如何通过字符指针来引用字符串,解释了字符串常量在内存中的存储方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在c中,

单引号包住的字符表示一个整数。

双引号包含的字符表示一个字符数组。也就是一个以\0结尾的字符串。


字符串常量

“hello”         "Line"       " "       "\a\Warning!\a"

这些都是字符串常量。

在程序中使用字符串常量时会生成一个 “指向字符的常量指针”。当一个字符串常量出现于一个表达式中时,表达式所使用的值就是这个字符串所存储的地址,而不是这些字符本身。

因此,你可以把字符串常量赋值给一个“指向字符的指针”,后者指向这些字符所存储的地址。

如:

char  *message = "Hello world!";

这条语句把 message 声明为一个指向字符的指针,并用字符串常量中的第一个字符的地址对该指针进行初始化。

上面语句同:

char  *message;

message = "Hello world";

首先message 是一个字符指针。这个字符指针指向"Hello world"的首地址。message只是存储"Hello world"的首地址,它和"Hello world"在内存中的地址并不在一起。

而 *message 指向一个字符,这个字符就是"Hello world"的首地址存放的字符,当然就是它首个字符 “H”。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值