记录一下这两者之间的转换,经常忘记
1. String转Char[]
char buf[10];
string str("ABCDEFG");
strcpy(buf, str.c_str());//strncpy(buf, str.c_str(), 10);
//方式2:
char buf[10];
string str("ABCDEFG");
length = str.copy(buf, 9);
buf[length] = '\0';
2. Char[]转String
假设c字符串定义为char ch[]=“hello world!”;
//1.向构造函数传入c字符串创建string对象:
string str(ch);
//2.使用拷贝构造函数创建string对象:
string str = ch;
//3.对已有的string对象调用string类内部定义的赋值运算符:
string str;
str = ch;
前两种类似,但和第三种有较大区别,前两种是运用构造函数直接创建一个内容与c字符串一致的string对象;第三种是c++标准库编写的string类的内部重载了赋值运算符,使之能够以c字符串作为右操作数对string对象进行赋值,使string对象的内容与c字符串一致。
3. int转string
#include<string>
//利用to_string函数。
int i = 5;
string str = to_string(i);
4.字符串转int
#include<stdlib.h>
char ch[] = "256";
int num = atoi(ch);
学无止境,加油!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/157459.html