以下是原有程式碼
#include <stdio.h>
#include <stdlib.h>
int main()
{
char a[999];
gets(a);
printf("%s",a);
return 0;
}
因為gets容易產生緩衝區溢位的安全問題,所以建議用fgets取代。
#include <stdio.h>
#include <stdlib.h>
int main()
{
char a[999];
fgets(a,999,stdin);
printf("%s",a);
return 0;
}
fgets第一個參數是用以存字串的陣列名稱,第二個參數是一行最多的字元數,第三個參數是指標,若第三個參數填入stdin,則會讀取來自鍵盤的輸入。
沒有留言:
張貼留言