首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

大家帮忙看看那错了?解决思路

2012-03-09 
大家帮忙看看那错了?????#include iostream#include stringusingnamespacestdvoidmain(){interrors0

大家帮忙看看那错了?????
#include <iostream>
#include <string>
using   namespace   std;

void   main()
{
int   errors=0;
string   str( "a   very   long   literal   string   ");
for   (int   ix=0;ix <1000000;++ix)
{
int   len   =str.size();
string   str2=str;
if(str=str2)
++errors;
}
cout < < "string   class: "
< <errors < < "   errors   occurred.\n ";
}

[解决办法]
if(str=str2)
-》str==str2
[解决办法]
#include <iostream>
#include <string>
using namespace std;

void main()
{
int errors=0;
string str( "a very long literal string ");
for (int ix=0;ix <1000000;++ix)
{
//int len =str.size();
string str2=str;//注意会调用拷贝构造函数
if (strcmp(str,str2))// 字符串的比较请使用strcmp,相等则返回0否则返回1或者-1
++errors;
}
cout < < "string class: "
< <errors < < " errors occurred.\n ";
}

[解决办法]
if(str==str2)比较的字符串的首地址而不是字符串的内容.

[解决办法]
同意楼上的说

热点排行