我正在查看關於strcpy()和strcat()的手冊。似乎沒有辦法評估函數調用的「成功」。 (即返回值永遠不會是NULL
),那是正確的嗎?無論如何檢查str函數的成功嗎?
它只是假設,如果你遵循這些函數的輸入規則,輸出將是有效的?只是想確保我沒有在這裏丟失任何東西......
我正在查看關於strcpy()和strcat()的手冊。似乎沒有辦法評估函數調用的「成功」。 (即返回值永遠不會是NULL
),那是正確的嗎?無論如何檢查str函數的成功嗎?
它只是假設,如果你遵循這些函數的輸入規則,輸出將是有效的?只是想確保我沒有在這裏丟失任何東西......
這些函數不能以任何明確定義的方式失敗。他們要麼成功,要麼事情發生嚴重錯誤(例如缺少0個字符或者輸出緩衝區太小),並且可能發生任何事情。
因爲我不認爲像這樣的功能真的有任何方式知道「成功」是什麼。例如,strcpy實際上只是memcpy。就C而言,它只是從一個存儲單元獲取數據並將其複製到另一個存儲單元。它不知道數據應該如何顯示,或者以您期望的方式進行格式化。我猜想,只有真正的方法,你會知道如果成功與否,如果你最終得到一個段錯誤或不。