本文共 1360 字,大约阅读时间需要 4 分钟。
数据类型 | 所占字节 | 范围 |
---|---|---|
char | 1字节 | -128 ———127 |
short | 2字节 | -32768——32767 |
int | 取决于编译器 | |
long | 取决于编译器 | |
long long | 8字节 |
一个新概念:补码
二进制补码较为常见,简单来说,正整数的补码就是它本身的二进制,负整数的补码则为与之将相应的正整数的二进制中1与0相互交换 比如:-1的补码就是1111 1111,1个字节=8位,
若一个变量想表示自己是unsigned可以在后面加上u或者U
其他数据类型同理,此处以char为例。。。。
数据类型 / 进制 | 输入与输出 |
---|---|
int | %d |
unsigned | %u |
long long | %ld |
unsigned long long | %lu |
8进制 | %o |
16进制 | %x |
没有特殊需要,就选择int
char —— 字符类型
用单引号表示,例:char c =‘1’;这里的变量c表示一个字符1 输入与输出都是%c字符 | 意义 | 字符 | 意义 |
---|---|---|---|
\b | 回退一格 | \ " | 双引号 |
\t | 到下一个表格位 | \ ’ | 单引号 |
\n | 换行 | \ \ | 反斜杠本身 |
\r | 回车 |
类型 | 字长 | 有效数字 |
---|---|---|
float | 32 | 7 |
double | 64 | 15 |
浮点数用%f输出,而在%后面加上 .数字 表示输出小数点后多少位;
printf("%.5f",0.00458); printf("%.10f",0.00458); printf("%.20f",0.00458); 看下输出结果printf输出inf表示该数超出范围
printf输出nan表示该数不存在没有特殊需要,就选择double
bool
sizeof()
给出某个变量或类型在内存当中占据的字节,sizeof是静态运算符。在括号内部不做计算 例如:printf(“sizeof(int)=%d”,sizeof(int)); 其他数据类型同理当俩个数据类型不相同时,会自动转换为较大的类型
char >> short >> int >>long >>long long int >> float >>double对于printf输出而言,任何比int小的数据类型都会转换为int
同理 float都会转换为double而scanf输入不会,要输入short类型,需要%hd
数据类型)值
例 printf("%d",(int)105.5); 会输出 105 其他数据类型同理。。。。名称 | 符号 |
---|---|
非 | ! |
或 | 俩条竖线 |
且 | && |
转载地址:http://nfqzi.baihongyu.com/