zoukankan      html  css  js  c++  java
  • 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,它具体翻译过来的意义和编译环境和选择的编码标准有关。

  • 相关阅读:
    HDU 5438 Ponds
    [HNOI2013]比赛
    [HNOI2009]最小圈
    【模板】高斯消元法
    控制公司 Controlling Companies
    sdut 2878 圆圈
    滑雪
    [ZJOI2010]排列计数
    [HNOI2003]激光炸弹
    [BZOJ 3732]Network
  • 原文地址:https://www.cnblogs.com/judes/p/5945844.html
Copyright © 2011-2022 走看看