一文了解什么是字符型数据 - 极悦
首页 课程 师资 教程 报名

一文了解什么是字符型数据

  • 2022-09-22 09:01:48
  • 806次 极悦

由于字符是按其代码(整数)形式存储的,因此C99把字符型数据作为整数类型的一种。

1.字符与字符代码

字符与字符代码并不是任意写一个字符,程序都能识别的。例如圆周率π在程序中是不能识别的,只能使用系统的字符集中的字符,目前大多数系统采用ASCII字符集。各种字符集(包括ASCII字符集)的基本集都包括了127个字符。其中包括:

字母:大写英文字母A~Z,小写英文字母a~z;

数字:0~9;

专门符号:29个:

! " # & ' ( ) * + , - . / : ; < = > ? [ \ ] ^ _ { | } ~

空格符:空格、水平制表符(tab)、垂直制表符、换行、换页

不能显示的字符:空(null)字符(以'\0'表示)、警告(以'\a'表示)、退格(以‘\b’表示)、回车(以‘\r’表示)等。

前已说明,字符是以整数形式(字符的ASCII代码)存放在内存单元中的。例如:

大写字母‘A’的ASCII代码是十进制数65,二进制形式为1000001

小写字母‘a’的ASCII代码是十进制数97,二进制形式为1100001

数字字符‘1’的ASCII代码是十进制数49,二进制形式为0110001

空格字符' '的ASCII代码是十进制数32,二进制形式为0100000

专用字符'%'的ASCII代码是十进制37,二进制形式为0100101

转义字符'\n'的ASCII代码是十进制数10,二进制形式为0001010

可以看到,以上的字符的ASCII代号码最多用7个二进制就可以表示。所以127个字符都可以用7个二进制表示(ASCII代码为127时,二进制形式为1111111,7位全是1)。所以在C中,指定用1个字节(8位)存储一个字符(所有系统都不例外)。此时,字节中的第1位置为0.

2.字符变量

字符变量是用类型符char定义字符变量。char是英文character(字符的所缩写),见名即可知意。如:char c='?';定义c为字符型变量并使初值为字符'?'。'?'的ASCII代码是63,系统把整数63赋给变量c。c是字符变量,实质上是一个字节的整型变量,由于它常用来存放字符。所以称为字符变量。可以把0~127之间的整数赋给一个字符变量。在输出字符变量的值时,可以选择以十进制整数形式输出,或以字符形式输出。如:printf("%d %%c\n",c,c);输出结果是:63 ?用“%d”格式输出十进制整数63,用%c格式用字符形式输出字符'?'.

说明:在使用有符号字符型变量时,允许存储的值为-128~127,但字符的代码不可能为负值,所以在存储字符时实际上只用到0~127这一部分,其第1位都是0.

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交