#include <stdio.h>
#include <string.h>
char* changeString(char *inputString);
int main() {
printf("Changed string is %s\n", changeString("42"));
}
char* changeString(char *inputString) {
static const char* someStrings[3] = {"abc", "def", "ghi"};
char* output;
strcat(output, someStrings[1]);
return output;
}
我想追加一个char*
到另一个char*
但是strcat
保持导致分割故障,因为char*
没有大小,改变char* output;
到char output[100];
修复分段错误,但是我返回了错误的类型,我无法打印printf
中的答案。如何使用strcat的与未指定长度的字符*
任何意见将不胜感激。
编辑:我知道上面的例子似乎没有任何价值,我改变它来演示我正在使用的逻辑。
“* ...试图将char ** *追加到另一个char ** ......”:'char *'是一个指向字符的指针。追加一个指向另一个没有意义。 – alk