atoi 函式的實現

2021-09-06 18:51:47 字數 934 閱讀 5944

atoi()函式的功能:將字串轉換成整型數;atoi()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負號才開始做轉換,而再遇到非數字或字串時('\0')才結束轉化,並將結果返回(返回轉換後的整型數)。

atoi()函式實現的**:

/*

* name:xif

* coder:xifan@[email protected]

* time:08.20.2012

* file_name:my_atoi.c

* function:int my_atoi(char* pstr)

*/int my_atoi(char* pstr)

/** 跳過前面的空格字元

*/ while(isspace(*pstr) == 0)

/* * 推斷正負號

* 假設是正號,指標指向下乙個字元

* 假設是符號,把符號標記為integer_sign置-1,然後再把指標指向下乙個字元

*/ if(*pstr == '-')

if(*pstr == '-' || *pstr == '+')

/* * 把數字字串逐個轉換成整數,並把最後轉換好的整數賦給ret_integer

*/ while(*pstr >= '0' && *pstr <= '9')

ret_integer = integer_sign * ret_integer;

return ret_integer;

}

如今貼出執行my_atoi()的結果,定義的主函式為:int  main  ()

int main()

執行結果:

atoi函式的實現

atoi函式的實現 寫這個函式的實現的原因很簡單,而且也很容易,直接抄襲的庫中的原始碼。因為有朋友面試的時候遇到了,前幾天乙個哥們面intel的時候也被問到了,巧合的是今天看廣聯達的面試題再次遇到。一周之內看到三次,讓我不得不重視一下啊,畢竟自己也要開始面試題呀面試題了!其實這個函式比較容易實現,不...

atoi函式的實現

atoi函式的實現 寫atoi函式的時候需要注意一下幾點 1.字串前的空白 2.字串所表示數值的正負號 3.結束條件,遇到非數字或者字元 0 結束 4.考慮溢位,分別與int值所能表示的最大 0x7fffffff 和最小值 0x8000000 進行比較 5.考慮異常輸入情況下,用全域性變數valid...

atoi 函式的實現

atoi 函式的功能 將字串轉換成整型數 atoi 會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負號才開始做轉換,而再遇到非數字或字串時 0 才結束轉化,並將結果返回 返回轉換後的整型數 atoi 函式實現的 name xif coder xifan 2010 yahoo.cn ti...