gpt4 book ai didi

c++ - 用 0x 作为十六进制值的前缀

转载 作者:行者123 更新时间:2023-11-30 01:47:16 24 4
gpt4 key购买 nike

我在 OpenGL 中查询 GL_TYPE,它以整数形式报告十六进制值,as it should .

例如:0x1406 被#define 定义为 GL_FLOAT,但从 OpenGL 以整数形式提供给我的是 5126。

不幸的是,OpenGL 不只是返回类型,它也不只是接受返回的整数(读取:十六进制)值。它显然需要在使用前加上 0x 前缀。

我试图为自己节省一个开关/外壳,而不是即时转换/转换,但我看不到其他方法。我还有其他选择吗?请不要提振。

最佳答案

不清楚您想到的是哪种“转换”:0x1406 等于 5126。它们只是在源代码中写入相同数字的不同方式,编译器会将它们转换为运行时使用的二进制形式。

您应该能够只使用 == 运算符将 glGetProgramResource 的结果与 GL_FLOAT 之类的常量进行比较,无论是否该常数在源代码中定义为 0x1406 或 5126。

关于c++ - 用 0x 作为十六进制值的前缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31822822/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com