std::string to_string(int value); std::string to_string(long value); std::string to_string(long long value); std::string to_string(unsigned value); std::string to_string(unsigned long value); std::string to_string(unsigned long long value); std::string to_string(float value); std::string to_string(double value); std::string to_string(long double value);
to_string函数(c++11):将各种类型的数值转化为string
string转化为char*
1.strdup()函数是c语言中常用的一种字符串拷贝库函数,一般和free()函数成对出现, 头文件:string.h
函数原型:
char *strdup(const char *s) { char *t = NULL; if (s && (t = (char*)malloc(strlen(s) + 1))) strcpy(t, s); return t; }
使用示例:
int main() { string s = "abb"; char* cst = strdup(s.c_str());//windows下为_strdup free(cst); return 0; }
2.string::c_str()返回const char*,再使用strcpy()函数转化为char*,char *strcpy(char* dest, const char *src),strcpy把从src地址开始且含有'\0'结束符的字符串复制到以dest开始的地址空间:
string s = "aaabgg"; char* cst = (char*)s.c_str();
3.string::c_str()返回const char*,再使用strcpy()函数转化为char*,char *strcpy(char* dest, const char *src),strcpy把从src地址开始且含有'\0'结束符的字符串复制到以dest开始的地址空间:
string s = "aaabgg"; char cst[10240] = { '\0' };//等价于char* cst=(char*)malloc(s.size()+1); strcpy(cst, s.c_str());