我永远无法理解如何用C打印unsigned long个数据类型.

假设unsigned_foounsigned long,那么我try :

  • printf("%lu\n", unsigned_foo)
  • printf("%du\n", unsigned_foo)
  • printf("%ud\n", unsigned_foo)
  • printf("%ll\n", unsigned_foo)
  • printf("%ld\n", unsigned_foo)
  • printf("%dl\n", unsigned_foo)

他们打印的都是-123123123号,而不是我的unsigned long号.

推荐答案

%luunsigned long的正确格式.听起来这里还有其他问题,比如内存损坏或未初始化变量.也许能给我们展示一幅更大的画面?

C++相关问答推荐

intellisense不工作,甚至已经下载了c/c++扩展

为什么我得到更多的256假阳性在PKZIP解密密钥验证?

如何正确地索引C中的 struct 指针数组?

GCC引发不明确的诊断消息

在列表中插入Int指针(C)

使用scanf在C中读取和存储文件中的值

在CLANG中调试预处理器宏

对于C中给定数组中的每个查询,如何正确编码以输出给定索引范围(1到N)中所有数字的总和?

为什么我会收到释放后堆使用错误?

有什么方法可以将字符串与我们 Select 的子字符串分开吗?喜欢:SIN(LOG(10))

如何使用唯一数字对整型进行分区

C堆栈(使用动态数组)realloc内存泄漏问题

如何在双向表中实现线程安全,每个条目仅使用4位,同时避免任何全局锁?

程序如何解释变量中的值

用C++初始化局部数组变量

STM32:代码的执行似乎取决于它在闪存中的位置

我正在使用 klib 库 我可以使用 (khash) KHASH_SET_INIT_INT64() 负值作为键.因为我在头文件中看到它使用 unsigned long int

这些表达式是否涉及 C 中定义的复合文字?

如何为avr atmega32微控制器构建C代码,通过光电二极管捕获光强度并通过串行通信传输数据

10 个字节对于这个 C 程序返回后跳行的能力有什么意义