是否可以将两个char const*
参数相加?
代码看起来应该像这样。我需要c
为char const
,如a
和b
。如果有人知道怎么做,请帮帮我:)
提前致谢
char const *a = "something";
char const *b = " more";
char const *c = a + b;
答案 0 :(得分:7)
如果您希望字符串像其他语言的对象一样工作,请使用std::string
。
std::string a = "something";
std::string b = " more";
std::string c = a + b;
如果您需要将结果字符串传递给期望const char *
的字符串,则可以在字符串上调用c_str()
函数。
答案 1 :(得分:0)
您应该有一个char
数组来创建连接结果:
char* result;
result = static_cast<char*>( calloc ( strlen( a) + strlen( b) + 1,
sizeof( char)));
strcpy( result, a); // copy string a into the result
strcat( result, b); // append b to the result
但是在C ++中你应该使用std::string
:
std::string a = "something";
std::string b = " more";
std::string result = a + b;