看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《happyhsf (happy)》之銘言: : 我的想法是說 : 把條件式改成while(num>=0&&非數字) : 但我不知道非數字要怎麼寫出來??? : 所以想請板上的前輩們 : 謝謝! char strInput while((48<=strInput) && (strInput>=57)) { cout<<"請輸入一個數"<<'\n'; cin>>strInput; cout<<"輸入"<<strInput<<'\n'; } 前陣子剛好遇到相同問題,就全部讀成ASCII來判斷,不知道板友有沒有更好辦法? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.224.55.226
BSpowerx:input >= '0' && input <= '9' 比較直覺 12/05 05:31
diabloevagto:不用特別轉成ascii,程式內運算都會自動轉成ascii 12/05 08:01
blackwindy:isdigit() 12/05 08:45
blackwindy:不建議直接打ascii,有時候跨平台會出問題 12/05 08:46
bigbite:我以為0~127的ascii是標準? 可以請教一下為何跨平台會影響 12/05 11:32
CaptainH:沒規定os的字元編碼一定要是ascii 12/05 12:11
ming1053:你這是一個digit 原po要number 12/05 12:30
blackwindy:就一個字元一個字元讀進來看是不是digit... 12/05 13:45
blackwindy:我只是提出不要直接用ascii碼辨識字元 12/05 13:47