C++程序,输出字符串变量时为什么会出错。直接输出字符串却不会出错!
#include<iostream>#include<iomanip>#include<math.h>usingnamespacestd;voidmain(){strin...
#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;
void main()
{
string a="asdfgh";
cout<<a;
} 展开
#include<iomanip>
#include<math.h>
using namespace std;
void main()
{
string a="asdfgh";
cout<<a;
} 展开
15个回答
展开全部
因为没有加#include <string>,对string重载输出流不被支持。以下两者任选一种方式解决:
1.加上#include <string>;
2.把代码按如下方式来改写:
#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;
void main()
{
string a="asdfgh";
int iLen=a.length(); char * pCh = new char[iLen];
a.copy(pCh,iLen);
cout<<pCh<<"\n";
}
两种方式都可以,随便选一种。
1.加上#include <string>;
2.把代码按如下方式来改写:
#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;
void main()
{
string a="asdfgh";
int iLen=a.length(); char * pCh = new char[iLen];
a.copy(pCh,iLen);
cout<<pCh<<"\n";
}
两种方式都可以,随便选一种。
展开全部
因为你定义字符串变量的类型string必须要包含库文件string,即加入#include <string>即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
#include<iomanip>
#include<math.h>
using namespace std;
int main()
{
string a="asdfgh\n";
cout<<a;
return 0;
}
我用的G++编译。将void更改为int,并添加return 0;编译执行通过。
#include<iomanip>
#include<math.h>
using namespace std;
int main()
{
string a="asdfgh\n";
cout<<a;
return 0;
}
我用的G++编译。将void更改为int,并添加return 0;编译执行通过。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
要使用string类,要先用#include<string>把string头文件包含进来。阁下的定义的字符串变量
string a="asdfgh"; 的数据类型string类型;
string a="asdfgh"; 的数据类型string类型;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
显示字符串常量:cout << "asdfgh";
显示字符串变量指针:cout << a;
显示字符串变量内容:cout << *a;
显示字符串变量指针:cout << a;
显示字符串变量内容:cout << *a;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询