我需要编写一个函数,它接收一个类型int(十进制)的参数,并返回string包含十六进制 int 值,但格式为 0xyy。
不仅如此,我还希望答案采用 4 字节的固定格式,例如:
int b = 358;
string ans = function(b);
Run Code Online (Sandbox Code Playgroud)
在这种情况下 ans = "0x00 0x00 0x01 0x66"
int a = 3567846;
string ans = function(a);
Run Code Online (Sandbox Code Playgroud)
在这种情况下 ans = "0x00 0x36 0x70 0xE6"
这可能看起来有点傻,但我无法意识到如何在 glColor4f 中输入所需的颜色。我的意思是,它需要 0.0 ~ 1.0 之间的 4 个浮点数,我找到的所有颜色都是十六进制或 rgb(介于 0 ~ 255 之间)。
如何使用 glColor4f 进行转换以获取所需的颜色?
我已经尝试过做这样的事情:
glColor4f(1/248, 1/50, 1/99);
Run Code Online (Sandbox Code Playgroud)
但这并不能解决问题。
我正在使用 JAVA 和 OpenGL-ES
字符串看起来像“#123456”,结果应该是:
int r = 0x12;
int g = 0x34;
int b = 0x56;
Run Code Online (Sandbox Code Playgroud)
或者只是在 C++ 中这个任务的逆:
我知道我可以将当前字符串拆分为 3 个子字符串,但如何将它们实现为十六进制值?
我在一个单元格中有以下值 07DD0B190C3A00
我知道:
07DD 是 2013 年 0B 是十一月 19 是 25 日 OC是中午的时间 3A 是分钟 58
我怎样才能把它翻译成 2013-11-25 12:58:00
我正在尝试.format()在想要打印的 python 中使用
1 到 N 以空格填充,以便所有字段都采用与二进制值相同的宽度。
以下是我迄今为止尝试过的
n=int(input())
width = len("{0:b}".format(n))
for num in range(1,n+1):
print (' '.join(map(str,(num,oct(num).replace('0o',''),hex(num).replace('0x',''),bin(num).replace('0b','')))))
Run Code Online (Sandbox Code Playgroud)
我不知道如何在.format()这里正确使用该功能。请帮忙
我一直在寻找这个,但找不到有效或我理解的解决方案。
我在数据库“0x6c8c93”中有一个字符串,我想将其转换为 Uint,以便将其转换为颜色。
下面是我以前用来将 Uint 转换为颜色的函数。我刚刚将颜色图表中的十六进制值以这种格式 0x6c8c93 传递给它。但是现在我需要从数据库中提取一些值,所以我必须使用字符串。
class func UIColorFromHEX(hexValue: UInt) -> UIColor {
return UIColor(
red: CGFloat((hexValue & 0xFF0000) >> 16) / 255.0,
green: CGFloat((hexValue & 0x00FF00) >> 8) / 255.0,
blue: CGFloat(hexValue & 0x0000FF) / 255.0,
alpha: CGFloat(1.0)
)
}
Run Code Online (Sandbox Code Playgroud)
感谢帮助。
我试图在 golang 字符串中转义特定的十六进制值。函数调用看起来像这样:
Insert(0, "\x00\x00\x00\rIHDR\x00\x00\x000\x00\x00\x000\b\x03")
Insert(25, "\x00\x00\x00\x06PLTE")
Insert(43, "\x00\x00\x00\x02tRNS")
Insert(57, "\x00\x00\t;IDATx\xDA\x010\t\xCF\xF6") // problem line
Insert(2432, "\x00\x00\x00\x00IEND")
Run Code Online (Sandbox Code Playgroud)
当语言解释“\xDA”十六进制转义时会出现问题。它没有正确转义为 Ú 值,而是转义为 ? (替换字符)。
我确保这是以下操场示例中发生的情况:
fmt.Println("\xDA")
i := 218
h := fmt.Sprintf("%x", i)
fmt.Printf("Hex conf of '%d' is '%s'\n", i, h)
fmt.Println(string(i))
Run Code Online (Sandbox Code Playgroud)
此代码段在运行时打印
?
Hex conf of '218' is 'da'
Ú
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么吗?"\xDA" 被转义为 65533 的事实正在抛弃我的整个程序,它依赖于 CRC32 和一些其他校验和。这不会发生在这个程序的javascript 版本中(它本身是 James compface 程序的翻译,用 C 编写)。
这是游乐场链接:https : //play.golang.org/p/c-XMK68maX
我需要将十六进制字符串转换为十进制值。我使用了以下方法。但有时它返回错误的十进制值。
十六进制字符串的格式为“00 00 0C 6E”
unsigned long hexToDec(String hexString) {
unsigned long decValue = 0;
int nextInt;
for (long i = 0; i < hexString.length(); i++) {
nextInt = long(hexString.charAt(i));
if (nextInt >= 48 && nextInt <= 57) nextInt = map(nextInt, 48, 57, 0, 9);
if (nextInt >= 65 && nextInt <= 70) nextInt = map(nextInt, 65, 70, 10, 15);
if (nextInt >= 97 && nextInt <= 102) nextInt = map(nextInt, 97, 102, 10, 15);
nextInt = constrain(nextInt, 0, 15); …Run Code Online (Sandbox Code Playgroud) 我想将十六进制值转换为十进制。所以我试过这个。当值 >0 时,它工作正常。但是当 value <0 时,则返回错误的值。
let h2 = “0373”
let d4 = Int(h2, radix: 16)!
print(d4) // 883
let h3 = “FF88”
let d5 = Int(h3, radix: 16)!
print(d5) // 65416
Run Code Online (Sandbox Code Playgroud)
当我通过 FF88 时,它返回 65416。但实际上它是 -120。
现在,我正在关注这个在 Swift答案中的十进制、二进制和十六进制之间的转换。但它并不总是有效。
请在线查看此对话。请参阅下图以了解有关此对话的更多详细信息。
有没有其他解决方案可以从十六进制值中减去十进制。?
任何帮助,将不胜感激 !!
我已经环顾 Stackoverflow 几天了,试图解决这个问题,并在 JsFiddle 中玩了一段时间,但到目前为止还没有运气。
这是我的问题:我收到一个包含多个值的 base64 编码字符串。无符号整数和浮点数。将 base64 解码为十六进制字符串很顺利。无符号整数也是如此。问题在于解码浮点数。
b76a40e9000000350a3d422d00000059e37c409a0000002f90003b6e00000000
这是我的数据,作为一个例子,使用前 32 位,是一个 IEE-754 浮点数,字节顺序1-0-3-2。所以这就是0xb76a40e9我所知道的7.30363941192626953125,当我们交换它时3-2-0-1它变成了0x40e9b76a。当我将此十六进制字符串放入https://www.h-schmidt.net/FloatConverter/IEEE754.html已确认的。
我的问题是,如果 javascript 中存在将十六进制 IEEE-754 浮点字符串转换为 javascript 浮点数的实现,我已经搜索了很长时间。JS 自己的 parseInt 将接受十六进制,但 parseFloat 出于某种原因不接受?
任何输入都将不胜感激,迄今为止人们制作的所有代码示例都产生了与我预期不同的数字。