char是c语言中最基本的数据类型之一,叫字符型,在内存中占用一个字节的空间,可以用于存放单个字符,也可以用于存放整数,char可以分为有符号和无符号两种类型,下面对着两种类型分别进行介绍:

有符号字符型变量使用char来定义,比如char b,b作为有符号字符型变量,当它用于定义一个整数时,它的取值范围为:-128-127。

无符号字符型变量使用unsigned char来定义,比如unsigned char c,c作为有符号字符型变量,当它用于定义一个整数时,它的取值范围为0-255.

char可以定义单个字符变量,也可以定义一个整数变量,下面举个例子:

#include <stdio.h>

int main()
{
    char c;
    c = 'a';
    char b;
    b = 12;
    printf("c=%c\n", c);
    printf("c=%d\n", c);
    printf("b=%d\n", b);
    return 0;
}

通过运行上面代码打印结果如下:

c=a
c=97
b=12

可以发现 printf("c=%c\n", c)打印的结果为c=a,这里我们将c以字符格式打印输出,所以得到c=a,

然而 printf("c=%d\n", c)打印结果是c=97,这是为什么呢,这里是由打印函数输出类型是%d导致的,意思是以整形打印输出,那么为什么是打印结果是97呢,这是因为在ASCII编码中字符‘a’ 表示十进制数97;另外printf("b=%d\n", b);打印的结果是12,这里通过定义我们可以知道char b=12,这里用char定义了一个整数12,最后我们用%d进行打印,结果就是b=12。

更多推荐

C语言中基本数据类型-char介绍