問題我有C.一個奇怪的問題,strca
噸這是代碼:與strcat的
char *getip(char n[])
{
char *x[255];
strcat(x, n);
char *ip;
ip = strtok(x, "/");
return ip;
}
char *adrr(char n[])
{
char *ip[255];
strcat(ip, getip(n));
return ip;
}
int main(void)
{
scanf("%s", &n);
printf("IP : %s\n", getip(n));
printf("IP : %s", adrr(n));
}
第一printf
回報正是我想要回來,雖然功能adrr
看似什麼都不做,第二個printf
在開始和結束返回一些隨機字符。
'字符* IP [255]'應'char ip [255]'否則它是一個指針數組。那麼,不是一個字符串。而且這不起作用,因爲你要返回一個臨時引用 –
首先,把'char * x [255]'改成'char x [255]'。 –
..並初始化它,以便'strcat'可以使用'char x [255] = {0};' –