這是什麼原因?我認爲如果一個指針爲null,那麼其餘的條件將不會被評估。爲什麼有條件導致seg故障?
// doesn't work:
char *ptr = somefunction();
if (ptr && ptr[0] == '1' || ptr[0] == 't')
// ...
// does work:
char *ptr = somefunction();
if (ptr)
if (ptr[0] == '1' || ptr[0] == 't')
// ...
這裏不是你的問題,但請注意,僅僅因爲指針是非空的並不意味着它是有效的...... –