【電腦程式設計】dev-c++ atoi 使用方法
【來源】http://tw.knowledge.yahoo.com/question/question?qid=1507082812943
【問題】發問者: 居晨 ( 初學者 5 級)
正如標題所問
atoi 的使用方法
例如
a1[ ]為char
(a1[0]="3"; a1[1]="9"; ...a1[n-1]="8"
把n個數字放入陣列,其皆為字元 )
a2[ ]為int
(要把字元轉為等值的字串 使
a2[0]=3; a2[1]=9;....a2[n-1]=8)
是直接這樣寫嗎?
for (i=0;i {
a2[i]=atoi(a1[i]);
}
但這樣寫程式出錯,還是沒有 include 的關係? 那這個函是要 include 的什麼呢??
* 2007-08-29 17:52:17 補充
TO 執著是為了不讓自己後悔 之一 (內容太多分兩次)
慘了,你讓我冒出更多問號了 = = "
網站中的程式:
int main ()
{
int i;
char szInput [256];
printf ("Enter a number: "); /*這printf是什麼意思?*/
fgets ( szInput, 256, stdin ); /*這 fgets又是什麼意思?*/
* 2007-08-29 17:52:48 補充
TO 執著是為了不讓自己後悔 之二 (內容太多分兩次)
i = atoi (szInput); /*szInput不是陣列嗎? 為何後面沒有"[ ]"呢?
那麼在這裡又是表示第幾個?*/
printf ("The value entered is %d. The double is %d.\n",i,i*2);
return 0;
}
抱歉,我是還沒買書的初學者,如果問的問題太好笑 請見諒
謝謝
【我的回答】
請見參考資料,這個網站很棒,介紹各種 function
參考資料 http://www.cplusplus.com/reference/clibrary/cstdlib/atoi.html
* 2007-08-29 17:50:17 補充
再補充一下,這個函數是把"字串"(string)轉換成"整數"(integer),你看他的範例,
/* atoi example */
#include <-- 一般而言,任一個程式都要include這個header
#include <-- 所以我認為是這個在作祟
我也是一個學習中的生手,等一下吃完飯自己寫個小程式玩玩看!再回報結果!
參考資料 自己
* 2007-08-30 14:51:26 補充
回應 2007-08-29 17:52:17 補充
會推薦這個網站是說他有很好的查詢功能,
你可以把有疑問的function複製貼上到頁面上端的查詢裡,
不過英文的的確會讓大家接受度較低,那我試著做個解答:
【printf】
print formatted data to stdout(將已定義型態的資料傳輸至標準輸出,通常是螢幕)
【 fgets】
Get string from stream (從Stream中接收資料)
關於stream在查詢網頁裡有解釋,這裡的情況是說,先在螢幕上顯示
"Enter a number",然後從你鍵盤的輸入中取得資料
參考資料 自己和已附上之網頁內容,另外
http://www.royaloo.com/misc/other/LCasNC.htm 不錯
* 2007-08-30 15:06:48 補充
char szInput [256];
1. 這裡有說 szInput 最後會是字元 (string,字串是一系列字元的意思),所以應該不是陣列
2. 然後在 fgets 的說明頁夜裡,fgets (string , 100 , pFile)是說
reads the first line of myfile.txt or the first 100 characters,
所以我認為,所謂 256 應該是頭 256 個字元的意思,
要不要試試看你照著做打一個szInput[3],然後輸入超過3個字元,看他結果?
參考資料 我也是初學者
【問題】發問者: 居晨 ( 初學者 5 級)
正如標題所問
atoi 的使用方法
例如
a1[ ]為char
(a1[0]="3"; a1[1]="9"; ...a1[n-1]="8"
把n個數字放入陣列,其皆為字元 )
a2[ ]為int
(要把字元轉為等值的字串 使
a2[0]=3; a2[1]=9;....a2[n-1]=8)
是直接這樣寫嗎?
for (i=0;i
a2[i]=atoi(a1[i]);
}
但這樣寫程式出錯,還是沒有 include 的關係? 那這個函是要 include 的什麼呢??
* 2007-08-29 17:52:17 補充
TO 執著是為了不讓自己後悔 之一 (內容太多分兩次)
慘了,你讓我冒出更多問號了 = = "
網站中的程式:
int main ()
{
int i;
char szInput [256];
printf ("Enter a number: "); /*這printf是什麼意思?*/
fgets ( szInput, 256, stdin ); /*這 fgets又是什麼意思?*/
* 2007-08-29 17:52:48 補充
TO 執著是為了不讓自己後悔 之二 (內容太多分兩次)
i = atoi (szInput); /*szInput不是陣列嗎? 為何後面沒有"[ ]"呢?
那麼在這裡又是表示第幾個?*/
printf ("The value entered is %d. The double is %d.\n",i,i*2);
return 0;
}
抱歉,我是還沒買書的初學者,如果問的問題太好笑 請見諒
謝謝
【我的回答】
請見參考資料,這個網站很棒,介紹各種 function
參考資料 http://www.cplusplus.com/reference/clibrary/cstdlib/atoi.html
* 2007-08-29 17:50:17 補充
再補充一下,這個函數是把"字串"(string)轉換成"整數"(integer),你看他的範例,
/* atoi example */
#include
#include
我也是一個學習中的生手,等一下吃完飯自己寫個小程式玩玩看!再回報結果!
參考資料 自己
* 2007-08-30 14:51:26 補充
回應 2007-08-29 17:52:17 補充
會推薦這個網站是說他有很好的查詢功能,
你可以把有疑問的function複製貼上到頁面上端的查詢裡,
不過英文的的確會讓大家接受度較低,那我試著做個解答:
【printf】
print formatted data to stdout(將已定義型態的資料傳輸至標準輸出,通常是螢幕)
【 fgets】
Get string from stream (從Stream中接收資料)
關於stream在查詢網頁裡有解釋,這裡的情況是說,先在螢幕上顯示
"Enter a number",然後從你鍵盤的輸入中取得資料
參考資料 自己和已附上之網頁內容,另外
http://www.royaloo.com/misc/other/LCasNC.htm 不錯
* 2007-08-30 15:06:48 補充
char szInput [256];
1. 這裡有說 szInput 最後會是字元 (string,字串是一系列字元的意思),所以應該不是陣列
2. 然後在 fgets 的說明頁夜裡,fgets (string , 100 , pFile)是說
reads the first line of myfile.txt or the first 100 characters,
所以我認為,所謂 256 應該是頭 256 個字元的意思,
要不要試試看你照著做打一個szInput[3],然後輸入超過3個字元,看他結果?
參考資料 我也是初學者
標籤: 我的奇摩知識+回答
0 個意見:
張貼留言
訂閱 張貼留言 [Atom]
<< 首頁