1樓:匿名使用者
函式itoa()。
大多數的編譯器(如windows上的)通常在/標頭檔案中包含這個函式。
char*itoa(int value,char*string,int radix);
int value 被轉換的整數
char *string 轉換後儲存的字元陣列int radix 轉換進製數,如2,8,10,16 進製等
c++,16進製制轉化問題,字串轉化成數字
2樓:匿名使用者
方法1:
#include
int main()
主要用到sscanf這個庫函式:
函式名: sscanf
功 能: 執行從字串中的格式化輸入
用 法: int sscanf(char *string, char *format[,argument,...]); //%x就是我們要格式化的型別,即輸出十六進位制
方法2:
#include
#include //strtol標頭檔案
int main()
主要用到strtol這個庫函式,它的使用方法是:
函式名: strtol
功 能: 將串轉換為長整數
用 法: long strtol(char *str, char **endptr, int base);//base指明我們要轉換為幾進製數
3樓:匿名使用者
不明你什麼意思,能再清晰地描述一下嗎?
怎麼把十六進位制的數字轉換為字串
4樓:匿名使用者
不知道你要什麼語言的,這是c#,十六進位制轉中文
////// 從16進製制轉換成漢字
///////// 編碼,如"utf-8","gb2312"
///public static string unhex(string hex, string charset)
// 需要將 hex 轉換成 byte 陣列。
byte bytes = new byte[hex.length / 2];
for (int i = 0; i < bytes.length; i++)
catch
}system.text.encoding chs = system.text.encoding.getencoding(charset);
return chs.getstring(bytes);}
5樓:
程式設計——字串——數值/字串轉換——十六進位制數字字串至數值轉換
c++ 字串與16進製制字串之間的轉換 20
6樓:會飛的小兔子
staticintstr_to_hex(char*string,unsignedchar*cbuf,intlen)
return0;
函式名稱:hex_to_str
函式功能:十六進位制
轉字串
輸入引數:ptr字串buf十六進位制len十六進位制字串的長度。
輸出引數:無
staticvoidhex_to_str(char*ptr,unsignedchar*buf,intlen)
}擴充套件資料
byte陣列轉十六進位制字串
publicstaticstringbytearraytohexstring(byteb)
if(inttmp<16)
}returnsb.tostring().touppercase();}
7樓:匿名使用者
#typedef unsinged char byte;
#include
#include
#include
std::vectorstr_to_hex(const std::string& str)
return vec;
}另乙個反過來自己寫吧!
8樓:匿名使用者
參考這裡
c++中 如何將整數轉換成十六進位制的字串
9樓:匿名使用者
1、首先開啟vc6.0, 新建乙個專案。
2、新增標頭檔案。
3、新增main主函式。
4、定義無符號char型別變數str,strh。
5、定義int變數i,j。
6、將str字元轉換為十六進位制並新增到strh中。
7、使用printf列印即可。
10樓:匿名使用者
用字串流就可以。
#include
#include
std::string dec2hex(int i, int width)
如按下面呼叫
std::cout << dec2hex(25, 4);
輸出0019
11樓:1002nd夜
沒說清楚是控制台輸出還是返回字串啊。
我就寫輸出到控制台吧。
int outputdec2hex(int dec, int bits)
sprintf(outputformat,"%%0%dx\n", bits);
printf(outputformat,dec);
return 0;}
12樓:潘寅傑
itoa,最後乙個引數寫16
c++,中怎麼樣將字串,轉化為十六進位制?? 用什麼函式??
13樓:匿名使用者
你是要把字串以16進製制的形式列印出來嗎?
下面可以實現:
char c = "abcdefg123456";
char *p = c;
for(int i=0; c[i]!='\0'; i++)
14樓:匿名使用者
沒有現成的系統函式可用,自己編寫吧。
假定字串是'0』~'9'的阿拉伯數字組成的,即字串是十進位制數字的組合,那麼可將該串轉換為十進位製數,再以0x格式輸出概述即可。
#include
unsigned atol(char *s)return num;
}int main()
"12908766" = (12908766) = 0xc4f8de"1a87655.6" = (1876556) = 0x1ca24cpress any key to continue
15樓:知道高高手無敵
char a="a6756";
int m;
m=hexstr(a);
int hexstr(char *m)
return d;
}字串主要用於程式設計,概念說明、函式解釋、用法詳述見正文,這裡補充兩點:1.free pascal中的ansistring只能看成整體,很多函式無法使用,就算是提取單個元素也很麻煩,所以除非萬不得已就不要用;2.
字串在儲存上類似字元陣列,所以它每一位的單個元素都是可以提取的,如s=「abcdefghij」,則s[1]=「a」,s[10]="j",而字串的零位正是它的長度,如s[0]=10(※上述功能ansistring沒有。)
16樓:匿名使用者
沒有函式只能自己程式設計實現
c++ 十六進位制字串 轉字串,求高手指點 50
17樓:做而論道
sprintf(ptr, "%02x",buf[i]);
試試這樣:
sprintf(ptr, "%02x",buf + i);
18樓:匿名使用者
char *output=""; 指向的是靜態儲存區域,不能更改其內容,不能作為sprintf的第乙個引數。
還是new一下或者用陣列吧
另外,關於這個函式的作用沒太看明白。
c++中怎麼樣把字串轉化為16進製製數
19樓:
#include
#include
using namespace std;
char getcharbyvalue(int value)string tohex(string str)return hex;
}int main(int argc, char *argv)
20樓:匿名使用者
char buf[512] = ;
char* src = "***puter";
file* f = fopen("save.txt", "w");
for(int i = 0; i < strlen(src); i++)
fwrite(buf, strlen(buf), 1, f);
fclose(f);
21樓:網路工程哥
#include
{char ch;
cin>>ch;
cout.sef(ios::hex);
cout<<"hex:"< 不知道你要什麼語言的,這是c 十六進位制轉中文 從16進製制轉換成漢字 編碼,如 utf 8 gb2312 public static string unhex string hex,string charset 需要將 hex 轉換成 byte 陣列。byte bytes new byte hex... include include define max 30 main 的定義 int main void 給你整個過程,你自己看 好像直接有庫函式sprintf x i c語言將乙個十進位制的整數轉換成十六進位制的字串 要轉成字串來 其實不需自要自己寫多少程式bai 借用sprintf就可以du了c... 第一種方法 先要把16進製制轉化成2進製 1af6 0001 1010 1111 0110 再把2進製轉化成10進製 0001 1010 1111 0110 1 2 1 1 2 2 1 2 4 1 2 5 1 2 6 1 2 7 1 2 9 1 2 11 1 2 12 2 4 16 32 64 12...怎麼把十六進位制的數字轉換為字串
怎樣把十進位制資料轉換為十六進位制字串
十六進位制1AF6轉換為十進位制等於