c++ 中 string 和 const char * 中的相同和不同,遇到的坑。

#include<iostream>
#include<string>
using namespace std;

string ToString(int i)
{
	string str = std::to_string(i);
	return str;
}
int main()
{
	int i = 1024;
	string str1 = ToString(i);	  //str1 = "1024"
	string str2 = ToString(i).c_str();//str2 = "1024"

	const char * str3 = str1.c_str(); //str3 = "1024"
	const char * str4 = ToString(i).c_str();//str4 = ""; strlen = 0;
	

	return 0;
}

如果函数返回值为std::string类型,那么不要使用const char * 来接。

猜你喜欢

转载自blog.csdn.net/qd1308504206/article/details/85245459
今日推荐