InTTZe
一、整形数据的类型:
a)整型常量:整型常量即整常数,有十进制、八进制和十六进制整数。
说明:123L,123U,123LU
十进制数:一串连续的数字表示,最高位为非零。
八进制数:以数字零开头。
十六进制数:以数字零和字母x开头,a-f不区分大小写。 注意:0是一个不分进制的整型数
考虑如下常数:32767,—32768,0,010,011,016,0x10,0xde,0xf
b)整型变量:分为有符号和无符号两种,所有整型变量在使用前必须加以说明和定义
有符号的整型变量分为三种:标准整型(int)、短整型(short)和长整型(long),其值可正可负。如:int/short c,d/long f.g;
无符号的亦可分为三种:标准整型(unsigned int)、短整型(unsigned short)和长整型(unsigned long),其值不能为负。如:unsigned int a,b;/unsigned short unsigned long f,g;
• int、short和long区别主要是表示的整数范围不同,用一个机器字来存放一个int型数据。且int、short和long型整数的字长满足:short<int<long。其中:int占16位,即两个字节。
short占16位,即两个字节。long占32位,即四个字节。
16位处理的数的范围:-32768~32767
正整数:以原码形式存放在内存中,最高位为符号位,16位是正数范围为0~32767 如:整数5对应00000000000000101。负整数:以补码形式存放在内存中
负整数:以补码方式存放在内存中
补码的求法:1.原码除符号位其余位均取反+1;2.用模减去绝对值。
补码还原十进制:除符号位其余位取反后转化成十进制数,将结果-1,还原出十进制数
二、字符型数据
a)字符型常量:
1.由一对单引号引起来的单个字符(可打印)
如:'x' 'a' 'B/ 'S'.
2.转义序列:反斜线后跟特定的字符(不可打印),作为一个字符对待,如其后的字符不能和\构成转义序列,则\被忽略。
\n 换行符 \r 回车符,回到此行的开头,并不换行
\\反斜线符 \t 水平制表符
\t Tab键,一次性输入多个空格
\b 退格符,光标向回走
\f 换页符,到下一页的开始
\\ 输出符号\
\' 输出单引号'
\0 空字符,不是空格,ASCII 码中=0
\ddd ddd是 1~3位8进制数字
\0xff ff1是1~2位16进制数字
注意:转义序列实际上作为一个字符来对待。但如果反斜线之后的字符和它不构成转义序列,则不起转义作用将被忽略。如:语句printf9"A\Nbc\nDEF\N");
语句printf("\tab\tcd\n\'ef\\gh\x");
PS:ASCII 码是2进制7位有效,占8位,所以对于8进制来说需要3位,对于16进制来说需要2位