有時候在伺服器端開發的時候,需要對自定製上層協議來序列化和反序列化資料,這種情況下有時候就會用到標題所言的這種操作。下面我列舉幾種常見的方法。
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;
char buf[size]=;
sprintf
(buf,
"result=%d"
, result)
;
這兩個函式並沒有實現標準化,所以不推薦使用!
int i;
char szinput [
256]
; printf (
"enter a number: ");
fgets ( szinput,
256,
stdin);
i = atoi (szinput)
; printf (
"the value entered is %d. the double is %d.\n"
,i,i*2)
;return
0;
int i;
char buffer [33]
; printf (
"enter a number: ");
scanf (
"%d"
,&i)
; itoa (i,buffer,10)
; printf (
"decimal: %s\n"
,buffer)
; itoa (i,buffer,16)
; printf (
"hexadecimal: %s\n"
,buffer)
; itoa (i,buffer,2)
; printf (
"binary: %s\n"
,buffer)
;return
0;
@@要使用這個類,首先得包含這個標頭檔案 < sstream>@@多次使用同乙個stringsream轉換不同物件時,轉換前需要使用clear()
@@這個方法的缺點是操作大量資料的時候速度就會下降。
char
* str =
"100"
;stringstream s
(str)
;int pos;
s >> pos;
//從 s 中提取資料 100 賦給 pos
stringstream s;
int pos =
100;
s << pos;
//取得 pos 中的值
string str = s.
str(
);
C語言 字串和數字的相互轉換
1.數字轉換為字串 sprintf 跟printf 在用法上幾乎一樣,只是列印的目的地不同而已,前者列印到字串中,後者則直接在命令列上輸出。sprintf 是個變參函式,定義如下 int sprintf char buffer,const char format argument 除了前兩個引數型別...
字串和數字之間的相互轉換總結
最近刷題有用到字串和整形數字之間的轉化,特地總結一下。int本身也要用一串字元表示,前後沒有雙引號,告訴編譯器把它當作乙個數解釋。預設情況下,是當成10進製 dec 來解釋,如果想用8進製,16進製制,怎麼辦?加上字首,告訴編譯器按照不同進製去解釋。8進製 oct 字首加0,16進製制 hex 字首...
字串與數字的相互轉換
在寫程式的時候常常碰到字串與數字相互轉換的問題,這裡做乙個小小的總結。字串與數字的轉換的方法比較多,按照不同的開發環境可以分為c c mfc,當然這三者存在著包含關係,在c開發環境中實現的方法在c 開發環境自然可以用,而用c 開發環境使用的方法在mfc一樣也可以使用。由於c mfc中使用類模板 cs...