返回介绍

入门

基础

进阶

15. Char 类型内存存储细节

发布于 2024-10-07 02:37:14 字数 4486 浏览 0 评论 0 收藏 0

char类型内存存储细节

  • char类型基本概念

  • char是C语言中比较灵活的一种数据类型,称为“字符型”

  • char类型变量占1个字节存储空间,共8位
  • 除单个字符以外, C语言的的转义字符也可以利用char类型存储
字符意义
\b退格(BS)当前位置向后回退一个字符
\r回车(CR),将当前位置移至本行开头
\n换行(LF),将当前位置移至下一行开头
\t水平制表(HT),跳到下一个 TAB 位置
\0用于表示字符串的结束标记
\代表一个反斜线字符 \
\"代表一个双引号字符"
\'代表一个单引号字符'
  • char型数据存储原理

  • 计算机只能识别0和1, 所以char类型存储数据并不是存储一个字符, 而是将字符转换为0和1之后再存储

  • 正是因为存储字符类型时需要将字符转换为0和1, 所以为了统一, 老美就定义了一个叫做ASCII表的东东
  • ASCII表中定义了每一个字符对应的整数
    char ch1 = 'a';     printf("%i\n", ch1); // 97    char ch2 = 97;    printf("%c\n", ch2); // a
  • char类型注意点

  • char类型占一个字节, 一个中文字符占3字节(unicode表),所有char不可以存储中文

    char c = '我'; // 错误写法
    
  • 除转义字符以外, 不支持多个字符

    char ch = 'ab'; // 错误写法
    
  • char类型存储字符时会先查找对应的ASCII码值, 存储的是ASCII值, 所以字符6和数字6存储的内容不同

    char ch1 = '6'; // 存储的是ASCII码 64char ch2 = 6; //  存储的是数字 6
    
  • 练习

  • 定义一个函数, 实现输入一个小写字母,要求转换成大写输出

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文