- 数在计算机存的内容没有改变,打印时只是输出的形式改变而已。
- %d 有符号打印 int 打印32位 十进制
- %o 打印八进制
- %x 打印十六进制 (打印出来的是小写字母 如 5f) %X 打印十六进制大写字母打印(如: 5F) 加一个# %#x 表示输出格式加上 0x
- %u 无符号打印32位 十进制(给的是补码)
// 这个案例还需要从新研究
int main(){
char num = 0x81;
printf("%d\n",num);
printf("%u\n",num);
}
// 输出结果:
-127
4294967169
-
%hd 有符号打印 short
-
%hu 无符号打印 short%ld
-
%ld 有符号打印long
-
%lld 有符号long long 类型
-
%llu 有符号long long 无符号
-
%lu 无符号打印long
m.n 格式:表示输出长度为m,其中小数部分n位
double a = 1.1415;
printf("%10.4lf\n",a); // 表示双精度打印 数据宽度为10 小数为4位
int b = 10;
printf("%d\n",b); // 10
-
默认是double类型 所以sizeof(3.14)=8 后面跟着 f 表示float类型