进制与字符编码
进制
整数有四种表示方式:
二进制:0,1 ,满2进1.以0b或0B开头。
十进制:0-9 ,满10进1.
八进制:0-7 ,满8进1. 以数字0开头表示。
十六进制:0-9及A-F,满16进1. 以0x或0X开头表示。A-F不区分大小写。
如:0x21AF +1= 0X21B0
进制的基本转换
十进制和二进制互转
二进制转成十进制:乘以2的幂数。如0b10001,1+222*2等于17。
十进制转成二进制:除以2取余数
二进制和八进制互转:0b1100 1000 等于 011 001 000 等于310
二进制和十六进制互转:0B1001 1101 等于 1001 1101等于9D
十进制和八进制互转:100先转为2进制0b110 0100等于 1 100 100等于144
十进制和十六进制互转90先位置2进制0b101 1010等于0b 0101 1010等于5A
注意:1000 0000 结果不是-0,而是-128。
字符编码
ASCII码表,只能表示128个字符,单字节编码表
unicode码表,可以表示所有的符号,固定双字节编码表
utf-8码表,可以表示所有的符号,可变字节长度编码表
一个英文字母,占1个字节;一个汉字,占3个字节
GBK码表,可以表示中文,但不能表示世界上所有符号
一个英文字母,占1个字节,一个汉字,占2个字节
特点:
char类型的常量值可以是用单引号引起来的单个字符,也可以是一个unicode码值,也可以是一个整型的常量值。任何编码表都是从unicode里面扩展而来的。
Last updated
Was this helpful?