新聞中心
linux 下的 atoi 函數(shù)是C 語言中文本轉(zhuǎn)換為 int 類型數(shù)字的最簡單函數(shù),其中字母 a 表示 ascii to integer(從 ASCII 碼轉(zhuǎn)換為整數(shù))。它從參數(shù) nptr 所指向的字符串中取得一個整數(shù)值,根據(jù)該字符串中的內(nèi)容,atoi 函數(shù)可以識別出十進制,八進制或十六進制的數(shù)值表示,結(jié)果是以 int 型返回。

具體的int型返回值規(guī)則如下:
1.如果 nptr 所指向的字符串為空字符串或沒有可轉(zhuǎn)換的值,函數(shù)返回默認值 0;
2.如果 nptr 所指的的字符串表示的值不能被存儲在long變量中,返回 0 或者 INT_MAX 當返回值大于 INT_MAX;
3.如果 nptr 所指向的字符串表示的值可以被存儲在 long 類型變量中,函數(shù)可以返回轉(zhuǎn)換后的值。
atoi 函數(shù)對字符串轉(zhuǎn)換成整數(shù)的處理非常強大,僅需傳入字符串參數(shù),就可以將字符串轉(zhuǎn)換為整數(shù)型。它還支持將八進制、十六進制的字符串轉(zhuǎn)換為 int 類型,其原理簡單解釋如下:所轉(zhuǎn)換的字符串從頭開始依次掃描,若遇到符號,先判斷看某個字符是否是有效字符(數(shù)字或字母abcdef),如果是,在統(tǒng)計得到有效數(shù)字后,根據(jù)進制(10 、 8 、 16 )計算出它的值,最后返回十進制結(jié)果。
下面是 atoi 函數(shù)的常見用法:
“`
#include
#include
int main()
{
int num;
char cnum[30]=”1234″; /* 把字符串”1234″ 轉(zhuǎn)換為數(shù)字 */
num = atoi(cnum);
printf(” num is %d\n”,num);
return 0;
}
“`
執(zhí)行上面代碼,將會輸出: num is 1234 。
從上面的講述我們可以看出 atoi函數(shù)的強大,它會將字符串中的整數(shù)轉(zhuǎn)換為int類型的變量,比如 “1234”轉(zhuǎn)換為1234 的int 類型變量。 此外,它還可以識別將8進制和16進制的字符串轉(zhuǎn)換為整數(shù)類型變量。因此 atoi 函數(shù)已經(jīng)展示出了它實現(xiàn)文本轉(zhuǎn)換為 int 類型數(shù)字的強大威力。
成都網(wǎng)站營銷推廣找創(chuàng)新互聯(lián),全國分站站群網(wǎng)站搭建更好做SEO營銷。
創(chuàng)新互聯(lián)(www.cdcxhl.com)四川成都IDC基礎(chǔ)服務(wù)商,價格厚道。提供成都服務(wù)器托管租用、綿陽服務(wù)器租用托管、重慶服務(wù)器托管租用、貴陽服務(wù)器機房服務(wù)器托管租用。
網(wǎng)站名稱:函數(shù)解析Linux下atoi函數(shù)的威力(linuxatoi)
文章位置:http://www.dlmjj.cn/article/dhodojd.html


咨詢
建站咨詢
