linux skill
linux console终端乱码解决
1、console终端乱码 在/etc/profile文件的最后一行添加如下内容:
export LC_ALL="zh_CN.GB18030"
2、xwindow终端乱码 在/etc/sysconfig/i18n文件的最后一行添加如下内容:
export LC_ALL="zh_CN.GB18030"
scanf vs printf
float var1;
double var2;
scanf("%f",&var1);
scanf("%lf",&var2);
printf("%f",var1);
printf("%f",var2);
printf("%.4f",var1);
printf("%.4f",var2);
也就是对于读取float和double,前者用%f后者用%lf
而对于输出,float和double都使用%f
printf的%f说明符的确既可以输出float型又可以输出double型。 根据"默认参数提升"规则(在printf这样的函数的可变参数列表中 ,不论作用域内有没有原型,都适用这一规则)float型会被提升为double型。因此printf()只会看到双精度数。参见问题15.2。
对于scanf,情况就完全不同了,它接受指针,这里没有类似的类型提升。(通过指针)向float存储和向double存储大不一样,因此,scanf区别%f和%lf。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。