【C语言】字符串学习

字符常量
  • 定义:用单引号括起来的单个普通字符或转义字符。
  • 字符常量的值:该字符的ASCII码值。
  • 转义字符:反斜线后面跟一个字符或一个代码值表示。
转义字符含义转义字符含义
\n换行\t水平制表
\v垂直制表\b退格
\r回车\f换页
\a响铃\反斜线
\ ’单引号\"双引号
\ddd3位8进制代表的字符\xhh2位16进制代表的字符
字符常量所占的字节数
#include<stdio.h>
int main()
{
	char ch='A'; 
	wchar_t wch=L'B';
	printf("%d,%d",sizeof('A'),sizeof('B')); 

	return 0;
}

编译结果:
在这里插入图片描述
在C语言中,根据C99标准的规定,'A’叫做整型字符常量(integer character constant),为int型,故结果是4(对于32位机器)

字符串常量

  • 定义:用双引号括起来的字符序列
    如:“hello,world” “A”
  • 存储:
    每个字符串结尾自动加个’\0’作为字符串结束标志
hello,world\0
  • 注意
    字符常量和字符串常量是两个不同的概念
  • 字符常量与字符串常量的不同
    例 ‘a’ = a ; “a” = a\0
  • 字符串不可作用于单个字符

错误写法:
char ch;
ch=“a”;

正确写法:
char ch;
ch=‘a’;

字符型数据

  • 字符’1’和整数1是不同的概念;
  • 字符’1’知识代表一个形状为’1’的符号,在需要时按原样输出,在内存中以ASCII码形式存储,占1个字节
  • 整数1是以整数存储方式(二进制补码方式)存储的,占2个或4个字节
#include<stdio.h>
int main()
{
	char ch='1'; 
	int num=1;
	printf("%d,%d",sizeof('ch'),sizeof('num'));
	printf("\n%d",ch); //字符按照证书打印,即打印该字符的ASCII码值 
	printf("\n%c",ch); //字符按照字符打印字符
	printf("\n%d",num);  //整数 

	return 0;
}

编译结果
在这里插入图片描述
由此可以看出字符’1’和整数1,从所占字节数和内存中存储方式是完全不同的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值