C++基础:为什么不能cout一个string

 我来答
物理公司的
2017-11-09 · TA获得超过5695个赞
知道大有可为答主
回答量:6105
采纳率:86%
帮助的人:1322万
展开全部

综上,cout函数重载的是string类库中的string类型,而不是CString或string.h中的。

例:

#include<iostream>
#include<CString>
//#include<string.h>
 
using std::cout;
using std::string ;
using std::endl;
 
main()
{
string a;
a="*******";
cout<<a<<endl;
 
}
当编译这个程序时,会出现这样的如上的error,而如果把上面的头文件改为#include<string>时,error就会消失。
 
而在MFC中或你包含的是CString头文件,如果想用cout输出string 类型,则需要先把string类型转换char*型,如上面例子:
#include<iostream>
#include<CString>
 
using std::cout;
using std::string ;
using std::endl;
 
main()
{
string a;
a="*******";
   char* b=(char*)a.c_str(); //将string类型转为char*
cout<<b<<endl;
}
TableDI
2024-07-18 广告
当我们谈到Python与Excel的拆分时,通常指的是使用Python的库来读取Excel文件中的数据,然后根据某种逻辑(如按行、按列、按特定值等)将数据拆分成多个部分或输出到新的Excel文件中。上海悉息信息科技有限公司在处理这类任务时,... 点击进入详情页
本回答由TableDI提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式