cout
是ostream
类的一个预定义对象,它被用来在标准输出设备上打印数据。一般来说,当我们在Linux操作系统中为G++编译器编写程序时,它需要在程序中使用 std
c命名空间。
// Program to show the use of cout without using namespace
#include <iostream>
int main()
{
std::cout << "YiibaiForGeeks";
return 0;
}
std:cout: 命名空间是一个声明性的区域,里面定义了一些东西。所以,在这种情况下,cout
被定义在std命名空间中。因此,std::cout
说明cout
定义在std命名空间,否则就使用定义在std
命名空间的cout
的定义。因此,std::cout
被用于定义std
命名空间中的cout
。
// Program to show use of using namespace
#include <iostream>
using namespace std;
int main()
{
cout << "YiibaiForGeeks";
return 0;
}
如果cout
既不使用 “using namespace std “也不使用 “std::”,会发生什么?
// Program without using
// using namespace std and std::
#include <iostream>
int main()
{
cout << "YiibaiForGeeks";
return 0;
}
编译错误 -
main.cpp: In function ‘int main()’:
main.cpp:5:2: error:
‘cout’ was not declared in this scope
cout<<"YiibaiForGeeks"<<endl;
main.cpp:5:2: note: suggested alternative:
In file included from main.cpp:1:0:
/usr/include/c++/7/iostream:61:18: note: `std::cout`
extern ostream cout; /// Linked to standard output
在C++中,cout
和std::cout
都是一样的,但有一些基本区别如下 -
编号 | cout | std::cout |
---|---|---|
1 | 必须在程序中写入 namespace std |
如果之前没有声明 namespace std ,则必须使用 std::cout |
2 | cout 是ostream 类的预定义对象 |
std::cout 调用标准模板/Iostream库,因为cout 只在std 命名空间中定义。 |
3 | 事先声明命名空间,就可以访问许多函数,如cin 、cout 等。 |
这只是在函数中对std 库进行的隐式初始化,如在 main 中计算 |
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:C++中 cout 和std::cout的区别
本文链接:https://www.vsdiffer.com/vs/difference-between-cout-and-stdcout-in-c.html
免责声明:以上内容仅是站长个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。
相关主题
- C++ map与unordered_map的区别
- C++ set 与 unordered_set的区别
- C++ STL中Multiset和Multimap的区别
- C++ 中的 std::next 与 std::advance 的区别
- C++中关系运算符(==)和std :: string :: compare()的区别
- C++和Go的区别
- C/C++中float和double的区别
- C语言和C++
- Java和C++
- Python和C++
- Rust和Dart的区别,哪个更有可能取代C++?
- std::string::append、std::string::push_back() 和运算符+=的区别