【谭浩强C程序设计精讲 3】字符型数据

2023-12-24 17:55:34

写在前面

从本文开始,内容基于谭浩强C程序设计第五版,因此,和前两讲(基于第二版)的目录对不上。

3.2.4 字符型数据

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

对前文常量的一种补充。

  • 字符常量有两种表现形式:

  • (1)普通字符

    • 用单撇括号括起来的一个字符,如:‘a’、‘Z’、‘3’、‘?’、‘#’。

    • 一般是按其 ASCII 代码存储。如:字符’a’的ASCII代码是 97,因此在内存中存放的是 97 的二进制形式。(同学们这里就可以写一个简单的程序测试一下,实践是检验真理的唯一标准)。

    #include <stdio.h>
    int main(void)
    {
        char c1,c2;//定义两个字符型变量
        c1 = 'a';
        c2 = 'A';      
        printf("字符a=%d,字符A=%d",c1,c2);
        return 1;
    }
    
    • 运行结果:字符a=97,字符A=65
  • (2)转义字符

    • 以“\”开头的字符序列。如在 printf 打印函数中经常出现 ‘\n’ 代表一个换行符。‘\t’ 代表一个 Tab 制表位置(1个Tab占用8列)。

    • 它是一种无法显示的“控制字符”。

    • 转义字符表不用背,常用的几个用的多了也就记住了,不常用的用时再查阅即可。

在这里插入图片描述

1. 字符与字符代码

字符与字符代码不是任意写一个字符,程序都能识别的,例如圆周率 π 在程序中就不能识别。目前大多数系统采用的是 ASCII 字符集,一共是127(二进制 7 个全 1)个字符,因此,用一个字节(8位)存储即可。(ASCII 表也是不要大家背的,用时查表即可)。

在这里插入图片描述

2. 字符变量
  • 字符变量是用类型符 char 定义。

    #include <stdio.h>
    int main(void)
    {
        char c = '?'; //定义字符变量c,并赋初始值为字符'?' 
        printf("%d, %c",c,c);
        return 1;
    }
    
    • 运行结果:63, ?
    • 系统将字符 ‘?’ 的 ASCII 值 63 赋给了变量 c。
  • 字符型数据的存储空间和值的范围

类型字节数取值范围
[signed] char(有符号字符型)1-128 ~ 127,即 -27 ~ (27-1)
unsigned char(无符号字符型)10 ~ 255,即 0 ~ (28-1)

本节完

文章来源:https://blog.csdn.net/u010916762/article/details/135182953
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。