关于C++中c_str()的问题。

2024-12-22 02:41:51
推荐回答(4个)
回答1:

The function c_str() returns a const pointer to a regular C string, identical to the current string. The returned string is null-terminated.

c_str函数的返回值是const char*的,不能直接赋值给char* ,所以就需要我们进行相应的操作转化(利用strcpy()函数),或用const char *ch试试

回答2:

//---------------------------------------------------------------------------
#include
#include
using namespace std;

int main(void)
{
string a("abcde");
const char *cap=NULL;

char *b=NULL;

cap=a.c_str(); /*用法<1>*/

b=new char[a.size()+1];
strcpy(b,a.c_str()); /*用法<2>*/
return 0;
}
//---------------------------------------------------------------------------

回答3:

应该是:
const char * ch = str.c_str();

回答4:

怎么报错,报什么错?说得详细点呀,IT工程技术网上有很多c++基础知识,你可以去看看。