C语言中字符型在计算机中的存储
一. 字符型的分类和表示范围
char:是有符号还是无符号数视编译器而定,一般为有符号数,下文把它全部当成有符号数进行讨论
表示范围:32位和64位机器上均是一个字节,所以是八个bit位,最高位为符号位之后,后七位是数据位,所以它的取值范围是-128---127(-2^7---2^7-1)
signed char :有符号数,和上面一样
unsigned char:无符号字符型
表示范围:一个字节,八个bit位全部是数据位,所以取值范围是0---255(0---2^8-1)
二. 计算机对字符型数据的存储和读取
字符型在计算机中是按照整型的规则进行存储的,如果是有符号类型,则最高位为符号位,0表示正,1表示负,其余七位为数据位。如果是无符号数,则八个位均为数据位。
这里我们讨论有符号位中,0和-128的存储规则。如果按照有符号数的存储规则,我们知道0000 0000表示0,那么1000 0000表示负0,这显然与我们的现实生活不符,而且也造成表示范围的减小。那么1000 0000表示的是什么数字呢。这里规定,当计算机用一各有符号数去读取1000 0000时,会自动的在1的前面补1,这样原来的8个bit位就变成了9个,其中补充的1作为符号位,又因为计算机是以补码的形式进行存储,这样1 1000 0000(补码)减1,变成了1 0111 1111(反码),再符号位不变,其余位按位取反得到1 1000 0000(原码),即得到了-128。
C语言中字符型在计算机中的存储相关推荐
- C语言中整型在计算机中的存储
一 . 整型的表示 1.字面值后面加上L(l)表示long长整型 2.字面值后面加上U(u)表示usigned整型值 3.十进制123 ... 4.八进制,以0开头,如0123,0754 ... ...
- c语言中字符型常量在内存中存放的是,【2017年整理】c语言中字符型常量与变量使用注意事项.doc...
[2017年整理]c语言中字符型常量与变量使用注意事项 字符型常量与变量 (1):字符常量:一个字符常量代表ASCII字符集中的一个字符,在程序中用单引号把一个字符括起来作为字符常量.例如'A' 'b ...
- C语言中字符型(char)的简单使用
C语言中字符型(char)的简单使用 刚接触C语言不久,在这记录下自己的一些学习心得.今天主要是在敲代码时遇到了一个小问题,如图: 应该是个比较简单的编程题.在我的想法中,应该使用循环逐个读入由A至Z ...
- c语言中像y的字符是什么意思,C语言中字符型(char)的简单使用
C语言中字符型(char)的简单使用 刚接触C语言不久,在这记录下自己的一些学习心得.今天主要是在敲代码时遇到了一个小问题,如图: 应该是个比较简单的编程题.在我的想法中,应该使用循环逐个读入由A至Z ...
- 数据在计算机中编码方式教案,字符数据在计算机中的表示方法
计算机中数据的概念是广义的,计算机除了处理各种数之外,还要处理大量符号,如英文字母.汉字等非数值的信息.例如,当要用计算机编写文章时,就需要将文章中的各种符号.英文字母.汉字等输入计算机,然后由计算机 ...
- 【小白学习C++ 教程】九、C++中字符型、字符串和转义字符
@Author:Runsen 文章目录 字符串 字符 转义字符 字符串 要在 C++ 中使用字符串,我们首先需要#include <string> 标头,来引入 std::string 的 ...
- C++中字符型变量与整型的算术运算
C++中字符型变量与整型的算术运算 字符型变量与整型的算术运算 C++中算术运算中的精度 下面的代码展示了上面表达式中类型的转换 数据类型的自动转换 字符型变量与整型的算术运算 最近在学习C++,经常 ...
- R语言将字符型(Character)变量转化为数值型(Numeric)
R语言将字符型(Character)变量转化为数值型(Numeric) 目录 R语言将字符型(Character)变量转化为数值型(Numeric) #基本语法
- c语言中字符型变量的类型标识符是,C语言中类型标识符有哪些
满意答案 564vlaci 2015.10.29 采纳率:48% 等级:12 已帮助:6409人 C语言中的标识符 1) 标识符由字母.数字.下划线"_"组成,并且首字母不能 ...
最新文章
- Carrier frequency 和 EARFCN的关系
- 4个实验,彻底搞懂TCP连接的断开
- php使用webservivce_基于SSM框架实现简单的登录注册的示例代码
- 【Win7 Oracle 10G rman迁移恢复到Linux 32bit oracle 10G实战】
- 没有统计学基础可以学python-机器学习和Python怎样快速掌握?你一定需要这27张清单...
- 从C语言的角度重构数据结构系列(四)-静态链表动态链表
- 信息系统项目管理师历年论文题目
- 如何实现标准TCODE的屏幕增强
- 欢乐纪中某A组赛【2019.7.11】
- oracle 11g release2版本jdbc,Oracle发布JDeveloper11gRelease2更新版
- Pyqt5+python+ErIC6+QT designer
- socket.io框架学习
- TensorFlow.js 来了!浏览器上线机器学习功能
- 软件著作权申请流程及模板
- 实时音频编解码之七 预加重
- 使用win10自带的计算器,计算对数log
- IDEA启动报错:Error launching IDEA if you already have a 64-bit JDK installed,define a JAVA_HOME
- php微信公众号发送邮件,GitHub - DongDavid/notify: 消息发送组件-邮件、微信公众号、企业微信、小程序...
- OPENGL纹理贴图作业分享
- Mybatis之Mapper代理开发方式
热门文章
- Python Tutorial(十):浏览标准库(一)
- 从瀑布模型、极限编程到敏捷开发
- 简单是可靠的先决条件
- 大型企业门户网站设计开发一般性原则和建议
- FPGA设计细节和实现(初学者)
- c++判断奇偶_常用的数据差错控制技术(2) 奇偶校验
- python 非线性回归_机器学习入门之菜鸟之路——机器学习之非线性回归个人理解及python实现...
- layui 表格内容写temple函数_layui表格-template模板的三种用法
- 软件架构师证书有用吗_健康管理师证书在求职时有用吗?
- 同底数幂比较大小方法_初中数学解题技法19.幂的运算