C语言学习-char型数据

字符型数据

1.1字符型常量

用单引号括起来的一个字符型常量,且只能包含一个字符,例如'a'、'A'、'1'、' '是正确的字符型常量,而'abc'、"a"是错误的字符型常量。转义字符也是一种字符型常量,以“\”开头的特殊字符称为转义字符。各种转义字符及其作用如表:

转义字符 作用
\n 换行
\b 退格
\x2 反斜杠

1.2字符型变量

Markdown更多语法
Markdown图片链接生成方法
一个字符型常量存放到一个字符型变量中时,实际上并不是把该字符的字型放到内存中,而是把该字符的ASCII码值放到存储单元中。如图所示,在计算机中存储的只是二进制的数据,当我们要输出字符'a'时,实际上计算机是从ASCII码表中查找对应的字符。
字符型数据的查找与转换
printf("%c\n",'a');printf("%c\n",97);效果完全一致。对于字符型变量,无论是赋ASCII码值还是赋字符,使用%c打印输出时得到的都是字符,使用%d打印输出时得到是都是ASCII码值。
例如,将小写字母转换为大写字母时,由ASCII码表发现小写字母与大写字母差值为32,因此将a减去32就可以得到大写字母A。

#include<stdio.h>
int main()
{
char c, d;
c = 97;
d = 'a';
printf("c=%c,d=%c\n", c, d);//打印都是字母a
printf("c=%d,d=%d\n", c, d);//打印都是97
c = c - 32; //小写字母转大写字母
printf("c=%c\n",c); //打印字母A
return 0;
}

1.3 字符串型常量

字符串型常量是一对双引号括起来的字符序列,例如"CHINA"、"a"等都是合法的字符串型常量,但注意,'a'是字符型常量,而"a"是字符串型常量,两者是不同的。C语言中没有定义字符串变量的关键字。

1.4 多种数据类型混合输入

当我们让scanf函数一次读取多种类型的数据时,对于字符型数据要格外小心,因为当一行数据中存在字符型数据读取时,读取的字符并不会忽略空格和'\n'(回车符),所以使用方法为scanf("%d %c%f",&i, &c, &f);编写代码时,我们需要在%d和%c之间加入一个空格。

posted @   paopaotangzu  阅读(91)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示