如何在c++中将字符串放入char*变量中
How to put a string inside a char* variable in c++
好吧,我将在这里做简要介绍。我有一个变量:
char* String;
和一个功能:
void AddString(char str[])
{
}
我需要在字符串的末尾添加str,例如:如果String = "ABC"
和str = "123"
函数AddString String = "ABC123"
之后我在网上到处找,但找不到我需要的东西,有什么帮助吗?
在C++中,使用std::string
而不是C样式的字符数组:
#include <string>
std::string String;
void AddString(std::string str) {
String += str;
}
如果你真的想通过steam来实现这一点,那么你需要为结果分配一个足够大的数组,复制字符串,并记住在末尾放一个终止符(零值字符)。像strlen
、strcpy
和strcat
这样的C库函数可能是有用的。细节留作练习,因为问题是关于C++而不是C.
对于使用C字符串,cstring头文件中有函数。要连接字符串,您需要strcat
使用strcat组合两个字符*
strcat接受两个参数,目标char数组c1和源char数组c2。您需要确保c1足够大,可以容纳c1和c2中的所有字符。
但是,您可以使用c++字符串。+运算符将为您处理此问题。
string s1, s2;
string s3 = s1+s2
char* String;
void AddString(char str[])
{
strcat(String , str);
}
/*Also, make sure you have allocated space for String before using AddString*/
String = malloc(25*sizeof(char)); //25 just an example.
此外,由于这是为C++标记的
您应该使用std::string
,如其他答案
相关文章:
- 如何在保持其值的同时将 c++ 无符号字符变量转换为 char 变量
- 如何更好地检查两个 char 变量是否在一组值中?
- 将双精度值转换为 char 变量时字符串流如何工作
- C++ 如何检查 char 变量是否未定义(未初始化)
- 在 c++ 中将 Char 数组添加到 Char * 变量
- char指针或char变量的默认值是多少
- 当对字符变量使用toupper()时,所述char变量输出多个字符.我该如何防止这种情况发生
- 在C++中,从构造函数中将字符串文本分配给成员const char*变量时会发生什么
- 程序的执行在 C++ 中输入 char 变量后结束
- 如何创建一个 char *[] 变量,以便将其传递给函数
- 将 2 位整数分配给 char 变量
- 将值设置为 char ** 变量 c++ 时出错
- 如果我们在 C++ 中声明一个起始'&'的 char 变量会发生什么?
- 在此范围C 中未声明字符串和char变量
- C++:如何将 char 变量分配给向量<char>并访问该向量的元素进行比较?
- 仅将输入的第一个字符用于 char 变量
- 在C 中使用两个CHAR变量评估布尔值
- 尚未声明char变量
- (C++)如何验证 char 变量的用户输入
- 为什么比较两次 char 变量比比较一次短变量更快