字串和數字相互轉化(包含快讀)

2021-10-25 17:09:59 字數 2204 閱讀 3613

字串轉數字函式會掃瞄常量nptr字串,跳過前面的空格字元,直到遇上數字或正負符號才開始做轉換,而再遇到非數字或字串結束時(』\0』)才結束轉換,並將結果返回

//string轉成const char *可以通過 c_str() 函式實現

//注意:一定要使用strcpy()函式 等來操作方法c_str()返回的指標

#include

intatoi

(const

char

*nptr)

;double

atof

(const

char

*nptr)

;long

atol

(const

char

*nptr)

;long

intstrtol

(const

char

*nptr,

char

**endptr,

int base)

;unsigned

long

intstrtoul

(const

char

*nptr,

char

**endptr,

int base)

;double

strtod

(const

char

*nptr,

char

**endptr)

;

#include

//value: 待轉化的整數。radix: 是基數的意思,即先將value轉化為radix進製的數,範圍介於2-36,比如10表示10進製,16表示16進製制。* string: 儲存轉換後得到的字串。

//char * : 指向生成的字串, 同*string。

char

*itoa

(int value,

char

*string,

int radix)

;char

*ltoa

(long value,

char

*string,

int radix)

;char

*ultoa

(unsigned

long value,

char

*string,

int radix)

;//value:待轉化的浮點數。ndigit:儲存的有效數字位數。*buf:結果的儲存位置。

char

*gcvt

(double value,

int ndigit,

char

*buf)

;char

*ecvt

(double value,

int ndigit,

int*decpt,

int*sign)

;char

*fcvt

(double value,

int ndigit,

int*decpt,

int*sign)

;

#include

inttoascii

(int c)

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

inttolower

(int c)

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

inttoupper

(int c)

;//返回轉換後的大寫字母,若不須轉換則將引數c值返回

int

quickread()

while

(ch >=

'0'&& ch <=

'9')

return x * f;

}

double

quickread

(char

*s)//帶小數的快讀

if(flag)cnt++

; x =

10* x + s[i]

-'0';}

}for

(int i =

0; i < cnt; i++

)x /=10

;return x * f;

}

數字與字串相互轉化 Unicode

vc中數字與字串轉換方法 1,char是最原始的字元資料型別,在非unicode版本的arx中使用 2,wchar t是寬位元組字元型別,在unicode版本中的arx中使用 3,t 是乙個巨集,可以將裡面的字串轉化成所在工程環境中的字元型別 4,tchar是unicode的一種,等同於 t 這個巨...

字串和數字的相互轉換

有時候在伺服器端開發的時候,需要對自定製上層協議來序列化和反序列化資料,這種情況下有時候就會用到標題所言的這種操作。下面我列舉幾種常見的方法。char buf size a 10 b 20 int a 0 int b 0 sscanf buf,a d b d a,b int result a b c...

C 字串和數字相互轉化的方法總結歸納

sscanf 源字串,格式,目的變數 字串陣列轉化為數字 理解為string scanf sprintf 目的字串,格式,源變數 數字轉化為字串陣列 理解為string printf 例如 include int main 輸出為 123 include int main 輸出為 1234atoi ...