作者fly9588 (豆芽菜菜子)
看板C_and_CPP
標題[語法] C atoi、itoa
時間Tue Apr 14 00:04:20 2009
已經自行解決。
原來只要
STR = atoi(cSTR);
就好了...囧
問題如版標,
小弟我寫了個計算程式讓使用者鍵入整數以便於計算,
如果輸入非整數的話會造成程式錯亂,
問了老師說有這 atoi 與 itoa 可以來轉換,
所以我想藉由 isdigit 與版標之 atoi、itoa 來進行字串與整數變換後,
來判斷是否為整數,如果不是就跳回重新輸入(不知道這種概念對不對),
不過我卡在 atoi 與 itoa 的使用方法,
查了查知識佳 與 cppreference,
發現使用方法有分兩種,一為 reference 上的解釋,我看不太懂(死),
二為知識佳上面,說 atoi 有三個含數,
一為要轉換的數字、二為目標字串、三為參數轉移時所需的基數,
照著知識佳我寫了一下,結果還是錯誤:
int STR;
char cSTR[100];
...
...
scanf("%s",cSTR)
↑如果使用者輸入了非整數,
我該怎麼寫才可以將他轉換成字串去做判別後在將他轉回整數呢?
請大大指點一下,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.45.103.85
※ 編輯: fly9588 來自: 114.45.103.85 (04/14 00:06)
1F:推 SATSUGAI:不是scanf("%s",cSTR);嗎? (如果有錯請無視orz) 04/14 00:27
謝謝提醒 :)
2F:推 kvykn:它們好像非標準欸 版上有人推薦過用sprintf來實作 04/14 00:50
※ 編輯: fly9588 來自: 114.45.103.85 (04/14 01:24)