dev-c++ atoi 使用方法

正如標題所問

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<n;i++)

{

a2[i]=atoi(a1[i]);

}

但這樣寫程式出錯

還是沒有 include 的關係?

那這個函是要 include 的什麼呢??

Update:

TO 執著是為了不讓自己後悔 之一 (內容太多分兩次)

慘了,你讓我冒出更多問號了 = = "

網站中的程式:

int main ()

{

int i;

char szInput [256];

printf ("Enter a number: "); /*這printf是什麼意思?*/

fgets ( szInput, 256, stdin ); /*這 fgets又是什麼意思?*/

Update 2:

TO 執著是為了不讓自己後悔 之二 (內容太多分兩次)

i = atoi (szInput); /*szInput不是陣列嗎? 為何後面沒有"[ ]"呢? 那麼在這裡又是表示第幾個?*/

printf ("The value entered is %d. The double is %d.\n",i,i*2);

return 0;

}

抱歉,我是還沒買書的初學者,如果問的問題太好笑 請見諒

謝謝

2 Answers

Rating
  • Favorite Answer

    請見參考資料,這個網站很棒,介紹各種 function

    2007-08-29 17:50:17 補充:

    再補充一下,這個函數是把"字串"(string)轉換成"整數"(integer),你看他的範例,

    /* atoi example */

    #include <stdio.h>  <-- 一般而言,任一個程式都要include這個header

    #include <stdlib.h>  <-- 所以我認為是這個在作祟

    我也是一個學習中的生手,等一下吃完飯自己寫個小程式玩玩看!再回報結果!

    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",然後從你鍵盤的輸入中取得資料

    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個字元,看他結果?

    Source(s): http://www.cplusplus.com/reference/clibrary/cstdli... 自己, 自己和已附上之網頁內容,另外 http://www.royaloo.com/misc/other/LCasNC.htm 不錯, 我也是初學者
  • 1 decade ago

    需#include<cstdlib>

    a2[i]=atoi(a1[i]);

    需改成

    a2[i]=atoi(&a1[i]); //參數是傳位址

    有錯再說吧

    2007-08-30 01:13:24 補充:

    printf是c的參數,這程式是用c寫的,就是c++中的cout

Still have questions? Get your answers by asking now.