神奇的C语言七:为什么C++要抛弃printf?

来源:互联网 发布:win32 api 界面编程 编辑:程序博客网 时间:2024/04/30 09:45

1、printf不能直接输出一个类;

2、printf本身有问题,它不是类型安全的;

举个例子。下面的程序会输出什么呢?

int main(){    float a = 3.14;    printf("%d\n", a);    return 0;}

会输出3吗?你可以试一试。这个时候我们需要对a进行强制类型转换,否则输出结果就不是我们想要的3。什么原因呢?这涉及到float、double、int的位分布问题了。这就体现了printf的不友好。

3、C++中其实也可以用printf,只不过可能会出一些问题,所以不提倡使用。

例如,同时使用cout和printf,可能会导致输出顺序出现偏差。

0 0