问题标签 [uint32-t]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
24584 浏览

c++ - 如何将 uint32_t 转换为 char* 类型

您好,我正在使用带有 adafruit shield 的 Arduino UNO 来显示分数值,但用于显示分数的函数仅接受 char* 值,并且分数本身最多可以占用 6 位数字(000,000 到 999,999)。我试过使用 sprint() 但我没有运气,因为屏幕会像疯了一样闪烁。我认为问题在于 chars 仅包含一定数量的字节,这些字节无法容纳 32 位 int,但我认为它们是解决此问题的一种方法。绘制文本是屏蔽用于在屏幕上绘制内容的函数,输入为 char*、颜色代码、大小、x 像素、y 像素。如果有人可以帮我在这两种类型之间进行转换,请告诉我。另外,如果他们是对我也有帮助的替代品。

我的代码:

我也尝试过使用:

0 投票
3 回答
604 浏览

c - 保存在 PROGMEM 中的数据类型可以稍后在程序中更改吗?

您好,我正在 Arduino 上制作游戏,但我需要存储 2 个全局变量来跟踪 currScor 和 hiScor 类型的分数并uint32_t节省内存空间,一旦游戏开始,我将它们标记为uint32_tcurrScor PROGMEM = 0;,分数将开始增加,但编译器说我不能分配给一个常量变量。有没有办法可以添加到存储在闪存中的这个变量?我是否应该考虑使用 EEPROM,尽管我担心过多的写入会烧毁该内存类型。

0 投票
3 回答
137 浏览

c++ - 在不更改数据类型的情况下可逆地组合两个 uint32_t

这是我的问题:我需要通过一个 uint32_t 传回两个 uint32_t(因为 API 的设置方式......)。我可以硬编码我需要反转操作的任何其他值,但函数之间传递的参数需要保持单个 uint32_t。

如果我可以将两个 32 位 int 移位到一个 64 位 int 中(就像这里解释的那样),这将是微不足道的,但编译器不喜欢这样。我也看过数学配对函数,但我不确定这是否是我在这种情况下需要的。

我想设置一个简单的密码: unint32_t 可以是密文,我可以硬编码密钥。这是一个例子,但这似乎有点矫枉过正。

这甚至可能吗?

0 投票
3 回答
918 浏览

c - 在c中转换数据类型

首先让我说我公开承认这是一个家庭作业,但我所问的与作业的目的无关,只是我不明白的东西C。这只是大型程序的一小部分。

所以我的问题是,我有一组包含各种数据类型的数据,如下所示:

[16 bit number][16 but number][16 bit number][char[234]][128 bit number]

其中每个块代表程序中其他地方的一个变量。我需要8bytes一次将该数据发送到一个接受uint32_t[2]输入的函数中。如何在不丢失值的情况下将我的转换234byte char array为?uint32_tchar

换句话说,我需要能够在以后从uint32_t版本转换回原始char array版本。我知道char1byte,并且该值也可以表示为与其 ascii 值相关的数字,但不确定如何在两者之间进行转换,因为有些字母有 3 位 ascii 值,而其他字母有 2。

我尝试使用从数据集中sprintf抓取8byte块,并将该值存储在uint32_t[2]变量中。它有效,但后来我丢失了原件char array,因为我无法找到返回/撤消它的方法。

我知道必须有一个相对简单的方法来做到这一点,我只是缺乏足够的技能C来实现它。

0 投票
3 回答
10119 浏览

c++ - 错误:uint32_t 的声明冲突

当我首先尝试编译我的程序时,我收到了这个错误:

错误:“uint32_t”没有命名类型

然后我包括

现在发现这个错误:

/include/stdint.h:52: 错误:冲突声明'typedef unsigned int uint32_t'</p>

/cuda/include/vector_types.h:452:错误:“uint32_t”之前的声明为“typedef struct uint32_t uint32_t”</p>

有什么建议可以解决这个问题吗?谢谢

0 投票
2 回答
2139 浏览

ios - 在 Objective C UIFontDescriptor.h 常量中使用 enum、uint32_t 和位移

我被介绍到目标 C 并且对枚举类型有一个温和的理解。

这是我正在关注的教程中使用的一段示例代码:

据我了解,bodyFont 是使用 UIFont 的类方法设置的,然后通过从 bodyFont 中提取它来创建 existingDescriptor。然后从中提取现有的 UIFontDescriptorSymbolicTraits 并存储在特征中。

我不明白之后会发生什么(特征| = UIFontDescriptorBold;)从谷歌搜索,我知道这是一个有点明智的比较然后分配,但我不确定为什么必须按照他的方式完成。转到我的下一个问题。

来自 UIFontDescriptor.h 的 API(https://developer.apple.com/library/ios/documentation/uikit/reference/UIFontDescriptor_Class/Reference/Reference.html#//apple_ref/doc/c_ref/UIFontDescriptorSymbolicTraits

符号枚举的含义是什么:uint32_t?我知道 enum 的用法,而且我有点知道 uint32_t 表示无符号 32 位整数(尽管我不确定它与普通的无符号 int 有何不同)。

另一个问题为什么将值创建为移位位而不是普通整数?为什么有些值会跳过位或数字(例如 UIDescriptorClassSlabSerifs 从 5u << 28 变为 7u << 28。或 UIFontDescriptorTraitBold 1u<<1 到 1u<<5)?

如果我的问题需要进一步解释,请告诉我。

0 投票
1 回答
411 浏览

arduino - 通过 adafruit BTLE 传递一组 uint32_t uid

我有一个 arduino 草图,它监听 RFID 标签,并获取它们的 uid 并将它们存储在一个数组中uint32_t

这是一个带有adaFruit BTLEadafruit NFC/RFID Shield的 arduino_uno 项目

数组是这样启动的:

然后在我的循环()中;

我找到一个像这样的 id:

并不是说该代码块会打印到串行监视器上:

似乎是 Mifare Classic 卡 #347161076
写入 BTLE:0x31 0x36 0x38 0x38 0x34

但是 BTLE 应用程序正在查看

16884

“作为卡片?

很明显,这是对由该BTLEserial.print()方法处理的 uint32_t 上的一些奇怪的字节转换造成的。

当我找到 id 时,我在上面的 items 数组中最多存储了六个。我想通过蓝牙将整个阵列作为逗号分隔的字符串发送到我的设备。

请帮助将此 uint32_t 转换为可由 BTLE 处理的字符串或其他对象

0 投票
1 回答
176 浏览

c++ - C++ - 自制大整数类给出错误

我正在编写一段可以处理由 4 个 uint32_t 元素构建的大整数的代码。我创建了一个名为 BigInteger 的类和一些运算符。问题是我得到了一些错误,但我不知道出了什么问题。我已将行后面的错误添加为注释。希望可以有人帮帮我。

提前致谢!




0 投票
1 回答
175 浏览

c - 如何将结构成员存储为大端

我有一个struct类似的:

我将使用mmap从文件中读取,所以我想将数字存储为大端。

我需要这样做htobe16/betoh16或者有一些__attribute__可以为我做这件事吗?

0 投票
3 回答
196 浏览

c++ - 转换一个常量以用作指针

我一直在使用一些在 ARM 处理器中运行的示例代码。要读取特定的内存位置,它会将常量值转换为地址。

例如:

我们要读取 0xa0000000 处的内存值

示例代码是这样的:

我不太了解演员表 *(uint32_t*)。在我看来,只有一个 * 就足够了。

我会很感激一些解释。

谢谢。