所以我有這個小部分代碼(基本上是我的整個程序的輸入)。fgets沒有使用sscanf正確存儲的輸入
它必須採用最多20個字符的字符串形式,並且兩個整數都用空格分隔。
例如,主站1
int main(void)
{
int i, x, y;
char input[28];
char* name = NULL;
fgets(input, 28, stdin);
sscanf(input, "%s %i %i", name, &x, &y);
printf("%s %i %i\n", name, x, y);
return 0;
}
基本上我試圖把它打印出來,看看該程序是否正確存儲輸入,因爲它被存儲在一個鏈表以後。
一切工作正常,但無論我輸入什麼,它打印出(空)0 4196064.它seg錯誤,如果我在sscanf()函數中放置和名稱infront和。
有關如何解決此問題的任何想法將不勝感激!
好吧,這很有意義。仍然試圖圍繞C和內存包裹我的頭,但這真的澄清了它。非常感謝! – user2334829 2013-05-05 00:46:39