char、unsigned char、BYTE
首先uchar就是BYTE:Typedef unsigned char BYTE;
char:就是signed char,是一个字节,8个位。第8位是符号位,所以可以表示-128~127共256个符号。
BYTE:没有符号位,可以表示0~255共256个符号。
在计算机中,所有数据都是二进制表示,一个字节有8个二进制位,2个十六进制位,如1111 0000=0xf0.这个字节代表扩展ASCII中的全等于符号(‘=‘多一行)。
可以把这个字节存成char,表示成-112(0111 0000=112),然而单个负数ascii不能构成意义,需要和其他码一起构成意义,比如可能在unicode里和其他字节表示成某个中文,所以有时候在mfc中调试时,显示char中的字符无效(花了好多天才明白这句话);也可以存在BYTE中,表示成扩展adcii码240(1111 0000=240),意义即上面的那个符号。
所以同一个字节存在char中或者byte中表示的意义不一样,但是读取它的时候都都城1111 0000,它具体翻译过来的意义和编译环境和选择的编码标准有关。
char、unsigned char、BYTE的更多相关文章
- char、signed char 和 unsigned char 的区别
ANSI C 提供了3种字符类型,分别是char.signed char.unsigned char.而不是像short.int一样只有两种(int默认就是signed int). 三者都占1个字节( ...
- C 中 char、signed char 和 unsigned char 的区别
C 中 char.signed char 和 unsigned char 的区别 来源:http://bbs.chinaunix.net/thread-889260-1-1.html 参考:https ...
- char、signed char、unsigned char的区别总结。
转载地址:http://hi.baidu.com/thewillreigns/blog/item/67e665c4296e69c038db492d.html char 和 unsigned char是 ...
- signed char、unsigned char
什么是无符号char类型?与常见的char类型有何不同? 在c++中有三种不同的字符类型:char,signed char,unsigned char.如果要应用与文本字符,就使用不加限制的char类 ...
- char, signed char, and unsigned char in C++
关于这三者的区别stackoverrflow里有一个答案是这样说的: 3.9.1 Fundamental types [basic.fundamental] 1 Objects declared as ...
- c语言中 char* 和 unsigned char* 的区别浅析(转)
原文:https://blog.csdn.net/guotianqing/article/details/77341657 背景最近在项目中遇到了一个编译警告,是因为定义的变量为char[],而在使用 ...
- char 与 unsigned char的本质区别
在C中,默认的基础数据类型均为signed,现在我们以char为例,说明(signed) char与unsigned char之间的区别 首先在内存中,char与unsigned char没有什么不同 ...
- char 与 unsigned char的区别和取值范围
1.char和unsigned char 都是一个byte,8个bit.char是无符号类型,首位bit是符号位. 2.取值范围不同: (1)unsigned char的取值范围:0~2^8-1(0~ ...
- char与unsigned char 差别
char 与 unsigned char的本质差别 http://bbs.csdn.net/topics/270080484 同一个内存内容:10010000 你用char* 解释是-1 ...
- char 与 signed char 和 unsigned char三者之间的关系
# char 与 signed char 和 unsigned char三者之间的关系 三者都占用 1个字节,即 8 bit signed char取值范围(-128, 127) unsigned c ...
随机推荐
- JQ 获取单选按钮选中的值
==========================html 代码 <input type="radio" style="float: left " on ...
- java-excel导出
java excel导出分为两种2003年的格式和2007年的格式. 2003年的xls一个sheet限制65536. 2007年的xlsx限制为1048576. jxl导入2003 gradle j ...
- 夺命雷公狗---Thinkphp----7之栏目配合Model的增删改查
我们首先来写一个查: public function lists(){ $type = M('Type')->select(); $this -> assign('type',$type) ...
- delphi 读取excel 两种方法
http://www.cnblogs.com/ywangzi/archive/2012/09/27/2705894.html 两种方法,一是用ADO连接,问题是Excel文件内容要规则,二是用OLE打 ...
- [Ubuntu] 转载-使用Ubuntu修复grub
原文地址:http://fav.coketea.com/article_show.php?id=1 步骤一.以试用方式进入ubuntu光盘系统,打开终端(快捷键ctrl+alt+t): 步骤二.获取r ...
- php 获取mac地址
<?php /** * 获取机器网卡的物理(MAC)地址* 目前支持WIN/LINUX系统 * 编辑: www.jbxue.com**/ class MacAddInfo { ...
- Android中的通知—Notification 自定义通知
Android中Notification通知的实现步骤: 1.获取NotificationManager对象NotificationManager的三个公共方法:①cancel(int id) 取消以 ...
- 第三方过滤器在TVideoGrabber中的使用
在TVideoGrabber中可以使用第三方过滤器,并可插入到预览.录制或回放流中,添加到列表里. 要在一个图像中中应用一个过滤器,需要像下面的例子中一样调用 ThirdPartyFilter_Add ...
- spring命名空间不需要版本号
为什么dubbo启动没有问题? 这篇blog源于一个疑问: 我们公司使了阿里的dubbo,但是阿里的开源网站http://code.alibabatech.com,挂掉有好几个月了,为什么我们的应用启 ...
- win8以上版本离线安装.NET
方法一.C盘自带.NET 3.5,安装系统以后直接安装.NET 3.5. 1.按下:win+x,点击“命令提示符(管理员), 2.输入或复制以下代码(不可漏空格):dism.exe / ...