字串與數字之間的轉換

2021-09-29 20:27:06 字數 2109 閱讀 6113

字串與數字之間的轉換

atof() 的功能:(將字串轉換成浮點型數)

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

所屬庫名:and

標頭檔案: #include

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

函式說明:

atof()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負符號才開始做轉換,而再遇到非數字或字串結束時(』\0』)才結束轉換,並將結果返回。引數nptr字串可包含正負號、小數點或e(e)來表示指數部分,如123.456或123e-2。

舉例:

#include

#include

intmain()

執行結果:-100.230000
2.atoi() 的功能: ( 將字串轉換成整型數)

標頭檔案: #include

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

函式說明:

函式會掃瞄引數 nptr字串,會跳過前面的空白字元(例如空格,tab縮排)等。如果 nptr不能轉換成 int 或者 nptr為空字串,那麼將返回 0 。特別注意,該函式要求被轉換的字串是按十進位制數理解的。atoi輸入的字串對應數字存在大小限制(與int型別大小有關),若其過大可能報錯-1。

舉例:#include

#include

char *a="-100.23";

printf("%d",atoi(a));

執行結果:-100

3.atol() 功能:(將字串轉換為長整型數)

4.strtol() 功能 (將引數nptr字串根據引數base來轉換成長整型數,引數base範圍從2至36)

函式定義:

long int strtol(const char *nptr,char **endptr,int base);

函式說明:

引數base範圍從2至36,或0。引數base代表採用的進製方式,如base值為10則採用10進製,若base值為16則採用16進製制等。當base值為0時則是採用10進製做轉換,但遇到如』0x』前置字元則會使用16進製做轉換、遇到』0』前置字元而不是』0x』的時候會使用8進製做轉換。

一開始strtol()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負符號才開始做轉換,再遇到非數字或字串結束時(』\0』)結束轉換,並將結果返回。若引數endptr不為null,則會將遇到不合條件而終止的nptr中的字元指標由endptr返回;若引數endptr為null,則會不返回非法字串。

舉例:`char *a=「11」;

char *b=「1」;

char c[1000];

int x,y,n;

//將a和b兩個字串轉化為用十進位制整數表示的二進位制數

x=strtol(a,null,2);

y=strtol(b,null,2);`

將數轉換為字串

6.gcvt() 功能:(把浮點數轉換成字串,同時返回乙個指向字串的儲存位置的指標)

用 法: char *gcvt(double value, int ndigit, char *buf);

包含標頭檔案:

引數value——被轉換的值。

digits——儲存的有效數字位數。

buffe——結果的儲存位置。

返回值返回乙個指向結果的儲存位置的指標

舉例:#include

#include

int main()

執行結果:123.5 //(四捨五入)

7.toascii() 功能:(將整形數轉換為ascii碼字元)

舉例:#include

#include

int main()

執行結果:89

y8.tolower() 功能:(將大寫字母轉換成小寫字母)

舉例:#include

#include

int main()

執行結果:abcde

}9.toupper() 功能:(將小寫字母轉換成大寫字母)

同上8

數字與字串之間的轉換

c語言為我們提供了數字和字串之間的轉換函式,這些函式有很多,常用的有 整型數轉字串函式itoa char itoa int value,char string,int radix int value 被轉換的整數,char string 轉換後儲存的字元陣列,int radix 轉換進製數,如2,8...

數字與字串之間的轉換

2 數字轉字串 使用sprintf 函式 char str 10 int a 1234321 sprintf str,d a char str 10 double a 123.321 sprintf str,3lf a char str 10 int a 175 sprintf str,x a 10...

字串與數字之間的轉換

c 11 提供了若干 to string t value 函式來將 t 型別的數字值轉換為字串形式。以下是幾個 to string 函式的列表 string to string int value string to string long value string to string double...