簡體   English   中英

相當於Java Integer.toHexString的C / C ++

[英]C/C++ equivalent to java Integer.toHexString

C / C ++等效於java Integer.toHexString。

將某些代碼從Java移植到C / C ++,C在Java中是否具有內置函數到Integer.toHexString?

更新:

這是我要移植的確切代碼:

String downsize = Integer.toHexString(decimal);

使用<sstream>標頭:

std::string intToHexString(int i) {
    std::stringstream ss;
    ss << std::hex << std::showbase << i;
    return ss.str();
}

在C中:

sprintf(s, "%x", value);

確保在s處有足夠的空間可顯示十六進制數字。 保證64個字節已足夠。

如何將Boost.Format用於C ++解決方案:

(format("%X") % num).str()

char s[1+2*sizeof x]; sprintf(s, "%x", x);

#include <iostream>
#include <sstream>

std::stringstream ss(std::stringstream::out);
int i;
ss << std::hex << i << flush;
string converted = ss.str();

還可以看看setw (需要#include <iomanip>

itoa可以滿足您的要求(第三個參數表示基礎):

/* itoa example */
#include <stdio.h>
#include <stdlib.h>

int main ()
{
  int i = 12;
  char buffer [33];
  itoa (i,buffer,16);
  printf ("hexadecimal: %s\n",buffer);
  return 0;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM