日志2

printf与cout对比:

1、在输出几位小数时,printf只需要在%后加上点几即可控制小数位数,并且采用的是四舍五入;

而cout首先需要头文件#include<iomanip>,之后在输出时使用setprecision()和fixed进行精度控制和补0,同样是四舍五入,

注意:setprecision单独使用是控制有效位数的,与fixed合用才是控制小数点后位数的,

使用方法如下:

float a=0.123; //方法一: cout<<setiosflags(ios::fixed)<<setprecision(5);
cout<<a<<endl;//输出 0.12300 //方法二: cout.setf(ios::fixed);
cout<<setprecision(5);
cout<<a<<endl;//输出 0.12300 //方法三: cout<<fixed<<setprecision(5)<<a;//输出 0.12300

能看出cout要比printf麻烦,故控制位数输出小数时推荐printf。

2、输出需要保留字符数据时,printf中只会输出如%d对应位置的数据,其他位置的字符或数据将会保留,比如想要输出a+b+c+d,使用printf:

printf("%d+%d+%d+%d",a,b,c,d);

而使用cout:

cout<<a<<"+"<<b<<"+"<<c<<"+"<<d;

类似这种情况有较多需要保留的字符或数据就推荐printf,省去打许多双引号。

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务