#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