2014-04-16 70 views
3

當我們需要在wordexp失敗時調用wordfree嗎?在某些情況下調用wordfree似乎會出現段錯誤(例如,當wordfree返回帶有字符串的錯誤代碼是「foo」欄)時。 這是不明確從手冊頁,我已經看到在一些錯誤情況下使用wordfree。當我們需要在wordexp失敗時調用wordfree嗎?

回答

3

按照GNU's manual example,應該對錯誤只調用是否返回WRDE_NOSPACE

switch (wordexp (program, &result, 0)) 
{ 
case 0:   /* Successful. */ 
    break; 
case WRDE_NOSPACE: 
    /* If the error was WRDE_NOSPACE, 
    then perhaps part of the result was allocated. */ 
    wordfree (&result); 
default:     /* Some other error. */ 
    return -1; 
} 
相關問題