如果我有类似如何把C++字符串转换成char数组
char name [10];
,我希望把字符串s转换名,其中s =“乔”
我会怎么做呢?
此外,我可以做一个函数,将字符串作为输入,但将它们视为字符数组?
如果我有类似如何把C++字符串转换成char数组
char name [10];
,我希望把字符串s转换名,其中s =“乔”
我会怎么做呢?
此外,我可以做一个函数,将字符串作为输入,但将它们视为字符数组?
strcpy()
通常会完成工作。 strncpy()
更好,如果有的话。
一个告诫strncpy( ):如果源字符串比length参数长,它不会终止。 – 2010-03-03 23:17:41
std::string
有一个c_str
成员将其转换为const char*
。从一个字符数组复制到另一个使用strcpy
。
strcpy (&name, s.c_str());
如果你有一个C++字符串,就可以调用它c_str()
方法获取char *
,适用于strcpy()
,在<cstring>
定义使用。
std::memcpy(name, str.c_str(), str.size() + 1);
@Phenom:你一直在问很多字符串问题。请阅读'std :: string'接口。这是一个很好的开始:http://www.cplusplus.com/reference/string/string/或者这个:http://www.sgi.com/tech/stl/basic_string.html – Dan 2010-03-03 23:40:58