• 字符型

  • 概念:用来描述字符的数据类型

  • 全称:character
  • 语法:
    char ch = 'a';    // 'a'是字符常量,代表字母a  
  • char 表示申请的内存空间的大小

  • ch 表示申请的内存空间的名称

  • ‘a'存储的是字符a的ASCLL码的二进制,01100001

  • (1)、ASCLL表(以ascll码表数值的方式,存储到内存中):

  • (2)、格式控制符(不仅包含字符,还包含其它格式):

  • %c            // 单个字符型
    %o            // 八进制
    %x             // 十六进制
    %#o            // 输出带有0前缀的的八进制数     012
    %#x,                // 输出带有0x前缀的十六进制数    0x12

      示例:                                                                                                                                              

    #include <stdio.h>
    int main(int argc, char const *argv[])
    {
        // 1、打印字符(字符 == 单字节的整型数)
        char ch1 = 'a';     // 单引号表示字符
        char ch2 = 105;     // 可以直接给字符类型赋整型数(因为字符类型本质上就是一个整型数(单字节))
        int  ch3 = 106;
    
        printf("ch1 == %d\n", ch1); // 以十进制数形式,打印字符变量ch1
        printf("ch2 == %c\n", ch2); // 以字符形式,打印这个ch2变量的值
        printf("ch3 == %c\n", ch3); // 以字符形式,打印这个ch3变量的值
    
        // 2、字符打印格式(其它格式)
        char ch4 = 107;
        printf("ch4(字符)      == %c\n", ch4);   // 打印字符
        printf("ch4(十进制)    == %d\n", ch4);   // 打印十进制数据
        printf("ch4(八进制)    == %o\n", ch4);   // 打印八进制数据
        printf("ch4(十六进制)  == %x\n", ch4);   // 打印十六进制数据
    
        printf("ch4(八进制)    == %#o\n", ch4);   // 打印八进制数据   
        printf("ch4(十六进制)  == %#x\n", ch4);   // 打印十六进制数据(0123456789abcdef,小写)
        printf("ch4(十六进制)  == %#X\n", ch4);   // 打印十六进制数据(0123456789ABCDEF,大写)
    
        return 0;
    }

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐