C语言重来37:字符类型

文章通过示例程序解释了在C语言中,char类型用于表示字符,如1,它的ASCII码值为49。当比较字符1(ASCII值49)与整数1时,两者不相等。输入输出操作中,%c用于处理字符,%d用于整数。通过scanf_s和printf函数展示了字符和其ASCII码值之间的转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们之前提到过,最小的整数为char,而在日常的使用当中我们经常使char来进行字符一类的输入,

而字符相对于其他的普通的变量之类的来讲。

就是一个字母或者数字加上一个单引号

在后面的输入和输出的时候,都是使用%c作为输出和输入的方式。

我们在具体的程序中来具体看一下1和带双引号的1的差别是什么。

#include<stdio.h>
int main()
{
    char c;
    char d;
    c = 1;
    d = '1';
    
    if (c == d)
    {
        printf("相等\n");
    }
    else
    {
        printf("不相等\n");
    }
    printf("c=%d\n", d);
    printf("d=%d\n", c);
    return 0;
}

由于最后的一个是字符一个是数字,所以两个肯定不相等,在结果中就出现了这个问题:

这里的49是1这个字符的阿斯克码值。

阿斯克码值是一个用整数输入字符的一种方法:

比如上面的字符1我们就可以通过整数49来进行输入,当然如果按照字符输入的话就直接定义一个字符变量,然后给它赋值为1就可以了。

比如我们来看一下下面的代码:

#include<stdio.h>
int main()
{
    char c;
    scanf_s("%c", &c);
    printf("c=%d\n", c);//作为整数是什么。
    printf("c=%c\n", c);//作为字符是什么。
    return 0;
}

结果是输入的是1的话,那用整数看的是1,而用字符来看的话就是49.

具体结果如下:

49在这里就相当于字符1.

ASCLL的具体的性质这里不加赘述。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值