1. 程式人生 > >c字串轉換函式atoi、atof、atol

c字串轉換函式atoi、atof、atol

c開發中會常會借用一些函式來完成數字到字串、字串到數字的轉換功能,下面列舉幾個常用到的字串轉換函式:

1. atof
 函式原型: double atof(const char *nptr)
 標頭檔案:#include<stdlib.h>
 函式說明:atof()函式會掃描引數nptr字串,跳過前面的空格
 字元,直到遇上數字或正負符才開始做轉換,而再次遇到非數字或字
 符串結束('\0')的時候才結束轉換,並將結果返回。引數nptr字元
 串可以包含正負號、小數點或E(e)來表示的指數部分,
如:23.45/123e-2;
函式傳入值:nptr:浮點型指標
函式返回值:返回轉換後的浮點型數

2.
atoi 函式原型: int atoi(const char *nptr) 標頭檔案:#include<stdlib.h> 函式說明:atoi()會掃描引數nptr字串,跳過前面的空格字元, 直到遇上數字或正負號才開始做轉換,而再遇到非數字或字串結 束('\0')時候才結束轉換,並將結果返回; 函式傳入值:短整型指標 函式返回值:返回轉換後的整型數 3.atol 函式原型: long atol(const char *nptr) 標頭檔案: #include<stdlib.h> 函式說明:atol()會掃描引數nptr字串,跳過前面的空格字元, 直到遇到數字或正負符號才開始做轉換,而再遇到非數字或字串結 束符('\0'
)時才結束轉換,並將結果返回 函式傳入值:nptr:長整形指標 函式返回值:返回轉換後的長整型數 #include<stdio.h> #include<string.h> #include<stdlib.h> int main() { char str[] = "-200"; char buf[] = "2000000"; char *arr = "-100.25"; int a; long b; double c; a = atoi(str); b = atol(buf); c = atof(arr); printf
("a = %d\nb = %ld\nc = %.2f\n", a, b, c); system("pause"); return 0; } 結果: a = -200 b = 2000000 c = -100.25