各種型別轉換 C

2021-07-02 20:06:05 字數 1774 閱讀 5630

1.int轉string

char buffer[50];

int count = value["total"].asint();

sprintf_s(buffer, "%d", count);

std::string out = buffer;

2.  string轉int

std::string str = "123";

int n = atoi(str.c_str());

3. const char *  轉  char *

string str = "asd";

char* p =const_cast(str.c_str());

4. char*和string之間的轉換

有了1和2的基礎,char*和string轉化就很簡單了。

(1)char*轉化為string,直接賦值即可。

ex: char* p = "tsinghua".

string str = p;

(2)string轉化為char*,走兩步,先是string->const char*,然後是const char*->char*

ex:  string str = "tsinghua";

char* p = const_cast(str.c_str()):

5. c++ md5加密

tchar szpassword[pass_len];

zeromemory(szpassword, pass_len);

cmd5encrypt::encryptdata(password.c_str(), szpassword);

6.unsigned  char 轉 int

例子:  unsigned char  c = '0x1c';

int i = (int)c;

輸出:  i= 28

7.int 轉string

char  ch[10];

sprintf_s(ch, "%d", 100);

std::string st = ch;

8.unsigned  char 轉 string

std::string  uchartostring(unsigned char c)

string to cstring比較簡單

string str="abcde";

cstring cstr(str.c_str());

cstring to string,要看你的cstring用的是unicode還是非unicode,

非unicode就簡單了

cstring cs="abcde";

string str(cs.getbuffer(cs.getlength()));

unicode就麻煩點

需要轉換一下才行,給個函式你用

cstring cs=_t("abcde");

string str=cgeneralutility::wchar2ansi(cs.getbuffer(cs.getlength()));

string cutility::wchar2ansi(lpcwstr pwszsrc)

//utf8轉化為gbk格式

void cattemperenginesink::convertutf8togbk(cstring &strutf8)

//gbk轉化為utf8格式

void cattemperenginesink::convertgbktoutf8(cstring &strgbk)

c 中各種型別轉換

c 中的型別轉換包括隱式型別轉換和顯式型別轉換。隱式型別轉換例如在int與float相加時已經發生,顯示型別轉換主要包括以下四種 1.static cast 主要用於非多型之間的型別檢查。不提供執行時的型別檢查來確保轉換的安全性,因此效率較高。常應用於以下場景 類層次結構中,父類與子類的指標和引用之...

各種型別的轉換

int i 100 long l 2001 float f 300.2 double d 12345.119 char username csdn char temp 200 char buf cstring str variant t v1 bstr t v2 一 其它資料型別轉換為字串 二 字串...

python各種型別轉換

int x base 將x轉換為乙個整數 long x base 將x轉換為乙個長整數 float x 將x轉換到乙個浮點數 complex real imag 建立乙個複數 str x 將物件 x 轉換為字串 repr x 將物件 x 轉換為表示式字串 eval str 用來計算在字串中的有效py...