<分区>
我有两个字符串,我想连接它们,所以,我使用了这段代码
char* a = "Hel";
字符* b = "lo";
strcat(a,b);
但是当我运行我的应用程序时它显示此错误 Access violating writing location
标签 c++
<分区>
我有两个字符串,我想连接它们,所以,我使用了这段代码
char* a = "Hel";
字符* b = "lo";
strcat(a,b);
但是当我运行我的应用程序时它显示此错误 Access violating writing location
最佳答案
它们都是(a
和b
)字符串字面量——您不能向它们写入。事实上,您根本不应该使用 char *a = "Hel";
——您应该使用 char const *a = "Hel";
,其中以防代码甚至无法编译。
尝试这样的事情:
std::string a = "Hel";
std::string b = "lo";
std::string c = a + b;
strcat
在 C++ 中(即使使用正确)充其量也是高度可疑的。
关于c++ - 尝试连接两个字符串时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15411911/