2008年1月9日 星期三

Hex to char, char to int

最近工作時遇到一個小問題:我要從ini檔案中,讀入一個十六進制的參數來
checksum的比較,之前我一直沒有遇到這種格式(例如0x001234),這
種格式直接讀成int會有問題,所以必須要先當成字串讀成char[],再轉成int
馬上請教google大神,得到以下轉換過程。

char hexvalue[100];
int intvalue;
unsigned short
checksumvalue;


//function{.....}

//把ini中的hex值讀進 hexvalue......

sscanf(
hexvalue,"%x",&intvalue);

checksumvalue = (unsigned short)
intvalue

//
接著checksumvalue就能拿來計算囉

沒有留言: