c语言 整形

整形

Name Description Size* Range*signed: Range*unsigned:
short Short Integer. 2bytes -32768 to 32767 0 to 65535
int Integer. 4bytes -2147483648 to 2147483647 0 to 4294967295
long Long integer. Windows为4字节,Linux为4字节(32位),8字节(64位) -2147483648 to 2147483647 0 to 4294967295
long long Long Long 8bytes
  1. 默认根据数字大小选择相应的类型,如果一个数太大无法用int表示,也会被当成long类型处理
  2. long类型以l或者L结尾,如123445L,这个使用场景是#define声明时,让看代码的人一目了然.
  3. 无符号常量用u或者U来表示,比如ul表示unsigned long类型
#include 
int main(void)
{
	int a = sizeof(short);
	int b = sizeof(int);
	int c = sizeof(long);
	int d = sizeof(long long);
	printf("%d\t%d\t%d\t%d\t\n", a,b,c,d);
	getchar();
	return 0;
}

常量表示

整型常量 所需类型
10 代表int类型
10l, 10L 代表long类型
10ll, 10LL 代表long long类型
10u, 10U 代表unsigned int类型
10ul, 10UL 代表unsigned long类型
10ull, 10ULL 代表unsigned long long类型

int型的不同的值的个数是与机器相关的,有的是2位,有的是4位

不同进制的输出

格式 描述
%d 输出一个有符号的10进制int类型
%o 输出8进制的int类型
%x 输出16进制的int类型,字母以小写输出
%X 输出16进制的int类型,字母以大写写输出
%u 输出一个10进制的无符号数

不同类型的输出

格式 含义
%hd 输出short类型
%d 输出int类型
%l 输出long类型
%ll 输出long long类型
%hu 输出unsigned short类型
%u 输出unsigned int类型
%lu 输出unsigned long类型
%llu 输出unsigned long long类型

有符号和无符号

有符号的数据可以分为符号位和数字位
无符号的数据全部是数字位

你可能感兴趣的:(c-c++)