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

类型转换,该怎么处理

2012-03-03 
类型转换int regcompx(const char* str){smatch whatif((strrchr(str, -))){regex expression(\\w{6}-

类型转换
int regcompx(const char* str)
  { smatch what;
if((strrchr(str, '-')))
  { 
  regex expression("\\w{6}-\\w{6}");//正则表达式
  if(regex_search(str, what, expression))
  {
  // bool s=regex_match(str, what, expression);
  for(int i=0;i<what.size();i++)
  // printf("str: %s\r\n", what[i].str);
  cout<<"str: " <<what[i].str()<<endl;//cout<< " "<<endl 输出并换行 endl相当于换行
  strcpy(buf, (char*)what[i].str());//错在这一行
  }
  }
  else
  {

  }
  return 0;
  }
error C2440: 'type cast' : cannot convert from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > ' to 'char *'
然后我就不知道怎么办了

[解决办法]

C/C++ code
string msg(what[i].first, what[i].second);strcpy(buf, (char*)msg.str());//错在这一行
[解决办法]
C/C++ code
strcpy(buf, what[i].str().c_str());//错在这一行 

热点排行