C++中的printf与cout有什么不同?

如题所述

c中的printf和c++中的cout完成的功能一样,都是输出
书写格式不一样
1.格式不同int a=6; cout<<a<<endl; printf("%d\n",a)
2.printf需要你告诉它格式(int %d, double %f,char %c)
cout不需要
另外
1.printf是函数。cout是ostream对象,和<<配合使用。
2.printf是变参函数,没有类型检查,不安全。cout是通过运算符重载实现的,安全。
3.如果printf碰到不认识的类型就没办法了,而cout可以自己重载进行扩展。
4.有时候printf比cout灵活。
c++中也能使用printf,但是c中不能使用cout
也可以这么说:c++可以完全兼容c的用法,反过来就不行
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-05-26
最大区别就是:
cout会缓冲
printf不会缓冲
如果在输出大数据时,交替使用这两种方法就会产生错误,因为有缓冲导致输出的顺序不一样
而且cout设置输出格式时比较麻烦
第2个回答  2020-06-24
printf

stdio.h
的头文件中
是C语言里的控制台输出语句
cout

std命名空间下
是C++的控制台输出语句
如果换成printf的话是
假设
a
为整形的变量
strMM为char类型的
printf("Result=%dE%c\n",&a,&strMM);
相似回答