c中如何將整數轉換成十六進位制的字串

2021-05-21 09:51:28 字數 3368 閱讀 6682

1樓:匿名使用者

1、首先開啟vc6.0, 新建一個專案。

2、新增標頭檔案。

3、新增main主函式。

4、定義無符號char型別變數str,strh。

5、定義int變數i,j。

6、將str字元轉換為十六進位制並新增到strh中。

7、使用printf列印即可。

2樓:匿名使用者

用字串流就可以。

#include

#include

std::string dec2hex(int i, int width)

如按下面呼叫

std::cout << dec2hex(25, 4);

輸出0019

3樓:1002nd夜

沒說清楚是控制檯輸出還是返回字串啊。

我就寫輸出到控制檯吧。

int outputdec2hex(int dec, int bits)

sprintf(outputformat,"%%0%dx\n", bits);

printf(outputformat,dec);

return 0;}

4樓:潘寅傑

itoa,最後一個引數寫16

c++裡面十六進位制怎麼轉換為字串

5樓:匿名使用者

函式itoa()。

大多數的編譯器(如windows上的)通常在/標頭檔案中包含這個函式。

char*itoa(int value,char*string,int radix);

int value 被轉換的整數

char *string 轉換後儲存的字元陣列int radix 轉換進位制數,如2,8,10,16 進位制等

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++,16進位制轉化問題,字串轉化成數字

9樓:匿名使用者

方法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指明我們要轉換為幾進位制數

10樓:匿名使用者

不明你什麼意思,能再清晰地描述一下嗎?

c++,中怎麼樣將字串,轉化為十六進位制?? 用什麼函式??

11樓:匿名使用者

你是要把字串以16進位制的形式列印出來嗎?

下面可以實現:

char c = "abcdefg123456";

char *p = c;

for(int i=0; c[i]!='\0'; i++)

12樓:匿名使用者

沒有現成的系統函式可用,自己編寫吧。

假定字串是'0』~'9'的阿拉伯數字組成的,即字串是十進位制數字的組合,那麼可將該串轉換為十進位制數,再以0x格式輸出概述即可。

#include

unsigned atol(char *s)return num;

}int main()

"12908766" = (12908766) = 0xc4f8de"1a87655.6" = (1876556) = 0x1ca24cpress any key to continue

13樓:知道高高手無敵

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沒有。)

14樓:匿名使用者

沒有函式只能自己程式設計實現

如何將很大的10進位制整數轉換成16進位制求高手

等一下,給你完整程式。以下程式經過除錯成功,你自己也試試。基本思想是 用字元陣列儲存10進位制數字,先將10進位制再轉換為2進位制,再通過2進位制轉換為16進位制。這裡先轉換為2進位制的原因是進行除2運算要相對容易一些,且2進位制轉換為16進位制以及8進位制都是很方便的。當然你也可以直接對16進行整...

如何將字串轉換成十六進位制資料,怎麼把字串轉化為十六進位制字串java

字元型別是整型型別的一種,將其轉換成int型別,然後再輸出十六進位制形式即可。下面是一個示例程式。include using namespace std int main char str test hello world n int limit strlen str test for int in...

將十六進位制數3ED082C轉換成二進位制,八進位制,十進位制

十六進位制轉換先轉換成二進位制,然後對著進製表一秒就解決了。十進位制轉換回二進位制可以用減法的,從128一直 答減下去,64.32.16.8.4.2.1 夠減就是一 不夠減添零就好,換成二進位制就好辦了嘛。這個文件可以幫你解決!下面是連結地址!開始選單 輸入 calc 按alt 3 就轉換為全能進位...