使用插入(<<)运算符和 "write" 函数在 C++ 中显示数据有什么区别?
what is the difference in displaying data in c++ using insertion(<<) operator and "write" function?
我发现两者的输出相同
1-插入(<<)运算符
cout<<"ahmed";
2- 使用来自 class ostream
的对象 cout 的函数写入
cout.writr("ahmed" , 5);
但是不知道有没有什么我没意识到的隐藏差异
有人可以回答我吗?
提前致谢
1- 插入 (<<) 运算符将打印直到遇到 '\0'。
2- 使用来自 class ostream 的对象 cout 的函数 write 将打印足够的字符,即使它遇到 '\0' 或超出边界。
#include <iostream>
using namespace std;
int main()
{
const char *str1="abc[=10=]def";
const char *str2="ghi";
cout<<str1<<endl;
cout<<"------------\n";
cout.write(str1,7);
cout<<"\n------------\n";
cout.write(str1,7+3);
}
result:
abc
------------
abcdef
------------
abcdefgh
我发现两者的输出相同
1-插入(<<)运算符
cout<<"ahmed";
2- 使用来自 class ostream
的对象 cout 的函数写入cout.writr("ahmed" , 5);
但是不知道有没有什么我没意识到的隐藏差异
有人可以回答我吗?
提前致谢
1- 插入 (<<) 运算符将打印直到遇到 '\0'。
2- 使用来自 class ostream 的对象 cout 的函数 write 将打印足够的字符,即使它遇到 '\0' 或超出边界。
#include <iostream>
using namespace std;
int main()
{
const char *str1="abc[=10=]def";
const char *str2="ghi";
cout<<str1<<endl;
cout<<"------------\n";
cout.write(str1,7);
cout<<"\n------------\n";
cout.write(str1,7+3);
}
result:
abc
------------
abcdef
------------
abcdefgh