0
我正嘗試在用戶輸入中讀取文件名,然後嘗試打開指定的文件。我得到的問題是似乎有垃圾字符添加到輸入的末尾。 (我嘗試printf()userInput變量時發現了這一點)。讀取系統調用垃圾字符
if(read(0, userInput, 128) < 0)
write(2, "An error occurred in the read.\n", 31);
任何想法發生了什麼問題? 我得到這個代碼直接從codewiki 感謝
好的,這是否意味着我必須在從用戶讀取後手動添加空字符?我也試過strcat(userInput,「\ 0」),但仍然最終變得垃圾 – user3299369
上面的代碼後,我有printf(「CHECK1%s CHECK2」,userInput); printf(「SECOND%s PART」,userInput); 檢查它是否正確讀取,但最終在打印字符串後(在printf語句中的%s之後)得到那些奇怪的符號 – user3299369
'strcat'只能用於C字符串。 catch-22(順便說一句,這是沒有用的)。 '輸入[pos] = 0' –