C语言-字符类型

C语言-字符类型本文详细介绍了 C 语言中的字符类型 ASCII 码的含义与应用 字符与整数的数学运算 以及 signed 和 unsigned 修饰符的区别 最后讨论了转义字符的使用

大家好,欢迎来到IT知识分享网。

一、什么是字符类型

  C语言使用char类型来表示一个字符,并且C语言是没有字符串类型的,我们通常使用字符数组来表示字符串。

每个字符变量,在16位、32位或64位编译器中都是占用 1 个字节(=8位)

二、普通表达

字符型变量赋值时,需要用一对英文半角格式的单引号('')把字符括起来。

  例如:

char c = 'A'; // 定义一个char类型的变量c,并将'A'赋值给c 

三、ASCll码值

1.什么是ASCll码

ASCII码:上个世纪60年代,美国制定了一套字符编码,对英语字符二进制位之间的关系,做了统一规定。这被称为ASCII码。ASCII码一共规定了127个字符的编码,比如空格“SPACE”是32(二进制00),大写的字母A是65(二进制0)。这128个符号(包括32个不能打印出来的控制符号),只占用了一个字节的后面7位,最前面的1位统一规定为0,也就是说,ASCII虽然用8位二进制编码表示字符,但是其有效位为7位

  常见的ASCII值与对应的字符如下:(ASCII数值范围为0-127)

在这里插入图片描述

2.实例

Ⅰ.两个字符类型可以做数学运算

char类型中的每个字符对应着一个ASCII码,因为ASCII码是一个数值,所以char类型的变量可以参与+-*/的运算。

  例如:

char a = 'a'; // ASCll码值为:97 char b = 'b'; // ASCll码值为:98 printf("%d", a + b); // a + b 结果为 195 

Ⅱ.字符’65’和整数65

  前面我们已经了解了ASCll表,所以很显然,字符’65’就是字符’65’,而整数65还有另外一个身份,那就是字符’A’

char a = '65'; char b = 65; printf("%c", a); // 打印为 65 printf("%c", b); // 打印为 A 

  再比如:

char c='?'; // 定义c为字符型变量并使初值为字符'?'。'?'的ASCII代码是63,系统把整数63赋给变量c printf("%d %c\n",c,c); // 用"%d"格式输出十进制整数63,用"%c"格式输出字符'?' 

四、signed 和 unsigned 修饰

  根据C90标准,C语言允许在关键字char前面使用signed或unsigned

signed char c; // 范围为 -128 到 127 unsigned char c; // 范围为 0 到 255 

C 语言规定 char 类型默认是否带有正负号,由当前系统决定,这一点与 int 不同, int 等同于 signed int 。这就是说, char 不等同于signed char ,它有可能是 signed char(范围-128 到 127) ,也有可能是 unsigned char (范围0 到255)。不管是哪种,范围都正好都能覆盖 0 到 127 的 ASCII 字符范围

五、转义字符

  使用反斜杠\来转义

字符形式 含义
\n 换行符(光标移动到下行行首)
\t 水平制表符,光标移到下一个Tab位置
\' 单引号字符 ’
\" 双引号字符 “
\\ 反斜杠字符 ’\’
\r 回车符,光标移到本行开头
\0 null 字符,代表没有内容。注意,这个值不等于数字0。
\b 退格键,光标回退一个字符,但不删除字符

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/125314.html

(0)
上一篇 2025-09-28 16:20
下一篇 2025-09-28 16:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信