c語言字串 數字轉換函式

2022-03-23 03:39:02 字數 4648 閱讀 3912

最近學資料結構老是做實驗

常用到字串和數字的轉換

想找卻發現網上的資料太散

所以蒐集整理一下 方便以後再用

atof(將字串轉換成浮點型數)

atoi(將字串轉換成整型數)

atol(將字串轉換成長整型數)

strtod(將字串轉換成浮點數)

strtol(將字串轉換成長整型數)

strtoul(將字串轉換成無符號長整型數)

toascii(將整型數轉換成合法的ascii 碼字元)

toupper(將小寫字母轉換成大寫字母)

tolower(將大寫字母轉換成小寫字母)

atof(將字串轉換成浮點型數)

相關函式 atoi,atol,strtod,strtol,strtoul

表頭檔案 #include

定義函式 double atof(const char *nptr);

函式說明 atof()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數

字或正負符號才開始做轉換,而再遇到非數字或字串結束時

('\0')才結束轉換,並將結果返回。引數nptr字串可包含正負

號、小數點或e(e)來表示指數部分,如123.456或123e-2。

返回值 返回轉換後的浮點型數。

附加說明 atof()與使用strtod(nptr,(char**)null)結果相同。

範例 /* 將字串a 與字串b轉換成數字後相加*/

#include

main()

執行 c=-98.23

atoi(將字串轉換成整型數)

相關函式 atof,atol,atrtod,strtol,strtoul

表頭檔案 #include

定義函式 int atoi(const char *nptr);

函式說明 atoi()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數

字或正負符號才開始做轉換,而再遇到非數字或字串結束時

('\0')才結束轉換,並將結果返回。

返回值 返回轉換後的整型數。

附加說明 atoi()與使用strtol(nptr,(char**)null,10);結果相同。

範例 /* 將字串a 與字串b轉換成數字後相加*/

#include

mian()

執行 c=356

atol(將字串轉換成長整型數)

相關函式 atof,atoi,strtod,strtol,strtoul

表頭檔案 #include

定義函式 long atol(const char *nptr);

函式說明 atol()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數

字或正負符號才開始做轉換,而再遇到非數字或字串結束時

('\0')才結束轉換,並將結果返回。

返回值 返回轉換後的長整型數。

附加說明 atol()與使用strtol(nptr,(char**)null,10);結果相同。

範例 /*將字串a與字串b轉換成數字後相加*/

#include

main()

執行 c=1234567890

gcvt(將浮點型數轉換為字串,取四捨五入)

相關函式 ecvt,fcvt,sprintf

表頭檔案 #include

定義函式 char *gcvt(double number,size_t ndigits,char *buf);

函式說明 gcvt()用來將引數number轉換成ascii碼字串,引數ndigits表示

顯示的位數。gcvt()與ecvt()和fcvt()不同的地方在於,gcvt()所

轉換後的字串包含小數點或正負符號。若轉換成功,轉換後的字

符串會放在引數buf指標所指的空間。

返回值 返回一字串指標,此位址即為buf指標。

附加說明

範例 #include

main()

執行 a value=123.45

b value=-1234.56

strtod(將字串轉換成浮點數)

相關函式 atoi,atol,strtod,strtol,strtoul

表頭檔案 #include

定義函式 double strtod(const char *nptr,char **endptr);

函式說明 strtod()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上

數字或正負符號才開始做轉換,到出現非數字或字串結束時

('\0')才結束轉換,並將結果返回。若endptr不為null,則會將遇

到不合條件而終止的nptr中的字元指標由endptr傳回。引數nptr字

符串可包含正負號、小數點或e(e)來表示指數部分。如123.456或

123e-2。

返回值 返回轉換後的浮點型數。

附加說明 參考atof()。

範例 /*將字串a,b,c 分別採用10,2,16 進製轉換成數字*/

#include

mian()

執行 a=1000000000

b=512

c=65535

strtol(將字串轉換成長整型數)

相關函式 atof,atoi,atol,strtod,strtoul

表頭檔案 #include

定義函式 long int strtol(const char *nptr,char **endptr,int base);

函式說明 strtol()會將引數nptr字串根據引數base來轉換成長整型數。參

數base範圍從2至36,或0。引數base代表採用的進製方式,如base

值為10則採用10進製,若base值為16則採用16進製制等。當base值為0

時則是採用10進製做轉換,但遇到如'0x'前置字元則會使用16進製制

做轉換。一開始strtol()會掃瞄引數nptr字串,跳過前面的空格

字元,直到遇上數字或正負符號才開始做轉換,再遇到非數字或字

符串結束時('\0')結束轉換,並將結果返回。若引數endptr不為

null,則會將遇到不合條件而終止的nptr中的字元指標由endptr返

回。返回值 返回轉換後的長整型數,否則返回erange並將錯誤**存入errno

中。附加說明 erange指定的轉換字串超出合法範圍。

範例 /* 將字串a,b,c 分別採用10,2,16進製制轉換成數字*/

#include

main()

執行 a=1000000000

b=512

c=65535

strtoul(將字串轉換成無符號長整型數)

相關函式 atof,atoi,atol,strtod,strtol

表頭檔案 #include

定義函式 unsigned long int strtoul(const char *nptr,char

**endptr,int base);

函式說明 strtoul()會將引數nptr字串根據引數base來轉換成無符號的長整

型數。引數base範圍從2至36,或0。引數base代表採用的進製方

式,如base值為10則採用10進製,若base值為16則採用16進製制數

等。當base值為0時則是採用10進製做轉換,但遇到如'0x'前置字元

則會使用16進製做轉換。一開始strtoul()會掃瞄引數nptr字串,

跳過前面的空格字串,直到遇上數字或正負符號才開始做轉換,

再遇到非數字或字串結束時('\0')結束轉換,並將結果返回。若

引數endptr不為null,則會將遇到不合條件而終止的nptr中的字元

指標由endptr返回。

返回值 返回轉換後的長整型數,否則返回erange並將錯誤**存入errno

中。附加說明 erange指定的轉換字串超出合法範圍。

範例 參考strtol()

toascii(將整型數轉換成合法的ascii 碼字元)

相關函式 isascii,toupper,tolower

表頭檔案 #include

定義函式 int toascii(int c)

函式說明 toascii()會將引數c轉換成7位的unsigned char值,第八位則會被

清除,此字元即會被轉成ascii碼字元。

返回值 將轉換成功的ascii碼字元值返回。

範例 #include

main()

執行 before toascii() : a value =217()

after toascii() : a value =89(y)

tolower(將大寫字母轉換成小寫字母)

相關函式 isalpha,toupper

表頭檔案 #include

定義函式 int tolower(int c);

函式說明 若引數c為大寫字母則將該對應的小寫字母返回。

返回值 返回轉換後的小寫字母,若不須轉換則將引數c值返回。

附加說明

範例 /* 將s字串內的大寫字母轉換成小寫字母*/

#include

main()

執行 before toupper() : abcdefgh12345;!#$

after toupper() : abcdefgh12345;!#$

c語言字串 數字轉換函式大全

最近學資料結構老是做實驗 常用到字串和數字的轉換 想找卻發現網上的資料太散 所以蒐集整理一下 方便以後再用 atof 將字串轉換成浮點型數 atoi 將字串轉換成整型數 atol 將字串轉換成長整型數 strtod 將字串轉換成浮點數 strtol 將字串轉換成長整型數 strtoul 將字串轉換成...

c語言字串 數字轉換函式大全

最近學資料結構老是做實驗 常用到字串和數字的轉換 想找卻發現網上的資料太散 所以蒐集整理一下 方便以後再用 atof 將字串轉換成浮點型數 atoi 將字串轉換成整型數 atol 將字串轉換成長整型數 strtod 將字串轉換成浮點數 strtol 將字串轉換成長整型數 strtoul 將字串轉換成...

c語言字串 數字轉換函式大全

本文 atof 將字串轉換成浮點型數 atoi 將字串轉換成整型數 atol 將字串轉換成長整型數 strtod 將字串轉換成浮點數 strtol 將字串轉換成長整型數 strtoul 將字串轉換成無符號長整型數 toascii 將整型數轉換成合法的ascii 碼字元 toupper 將小寫字母轉換...