我试图将字符串附加到另一个字符串,并且我遇到了seg错误,似乎无法弄清楚我做错了什么。尝试附加字符串时发生Seg错误
typedef char * String;
String function(String str) {
// Some variables here
String current = "";
String ch = "";
//More code here
while() {
if() {
current = malloc(strlen(current) + strlen(ch) + 1);
strcat(current, ch);
}
...
}
}
我总是收到赛格故障甚至与strcat
行注释掉,并与malloc
线反之亦然。这可能是我错过了一些很痛苦的事情,但是有人可以解释如何正确地做到这一点,并解释我做错了什么?
malloc后没有终止电流。 – zubergu