※ 引述《streit.bbs@aeug.twbbs.org (亞斯爾‧馮‧修特萊)》之銘言:
> ※ 引述《garylee.bbs@bbs.yzu.edu.tw (www.dev.idv.tw)》之銘言:
> > 3. if (atoi(&NC.....) 這裡有bug。你的程式沒crash掉已經是運氣好了。
> > 如果只是要判斷一個字元是不是"0",何不寫成下面這樣呢?
> > if (tmpStr[0] == '0' && tmpStr[1] == '0')
> 會crash的理由是??
> 要判斷兩各字元是否都是數字 因為第一各可能是英文字母或是其他特殊字元
> 如果第二各式數字則 本行一樣要視為資料寫入struct中
重點不在於你要判斷第一個字元是什麼
你知道 zero-terminated string 嗎?
atoi 假設會收到一個字串,結尾有個 0
你宣告 NC 只有一個字元,可沒保證 *(&NC+1) 的內容是 0 喔
所以沒 crash 掉真的是剛好
C 語言的字串處理該好好看一下..
--
@, ●秘密情人● (bbs.cse.ttu.edu.tw)
~\ ◆ Post From: 61-70-137-117.adsl.static.giga.net.tw ◆