108得票10回答
"uint32_t"不是一种数据类型

我正在尝试编译一个2007年编写的C++软件包,但是遇到了以下错误: 错误: ‘uint32_t’未定义 这是在64位Ubuntu上使用g++ 4.5.2时发生的。但在64位CentOS上使用g++ 4.1.2编译没有问题。 我是否缺少某个#include或编译器标志? 或者,应该使用t...

95得票2回答
uint32和uint32_t的区别

这是一个重复的问题: 不同整数类型之间的区别 在C/C++中,uint32和uint32_t有什么区别? 它们是否依赖于操作系统? 在哪种情况下应该使用其中之一?

44得票4回答
理解不了表达式 *(uint32_t*) 的含义

我不理解表达式 *(uint32_t*) 的含义。 我将这个语句拆成一个例子,以便我可以尝试解释每个部分的含义。 uint32_t* ptr; uint32_t num *(uint32_t*)(ptr + num); // <-- what does this do? 我不...

21得票2回答
在 C 语言中,什么时候应该使用 UINT32_C()、INT32_C() 等宏?

我在我的项目中切换到了固定长度的整型,主要是因为它们在使用时可以更清晰地思考整数大小。通过 #include <inttypes.h> 引入它们还会包括一堆其他宏,比如打印宏 PRIu32、PRIu64 等。 要将常量值分配给固定长度变量,可以使用像 UINT32_C() 和 I...

9得票2回答
如何从uint32_t类型的变量中打印十六进制数?

我正在处理的代码需要我以十六进制形式打印一个类型为uint32_t的变量,补0并且最小长度为8。我迄今所使用的代码是: printf("%08lx\n",read_word(address)); 当read_word返回类型uint32_t时,我已经尝试使用jx、llx等格式,但都无效,...

9得票1回答
如何将 uint32_t 类型转换为 char* 类型?

你好,我正在使用Arduino UNO和Adafruit屏蔽板来显示分数值,但用于显示分数的函数只接受char*值,并且得分本身可以占据高达6位数字(000,000到999,999)。我已经尝试使用sprint()方法,但一直没有成功,因为屏幕会闪烁得像疯了一样。我相信问题在于chars只能容...