GCC ARM C编译器不支持%llx printf格式代码的-std = c99

贸泽·威廉姆斯

我正在尝试使用以下方式打印一些64位无符号整数:

uint64_t x = 0xFFFFFFFFFFFFFFFF;
printf("Value: %016llx \n", x); 

我得到这个回应:

0000000000000000lx

如果将格式设置字符串更改为%016lx,则会收到有关使用错误类型的编译警告,并且仅输出低32位:

00000000FFFFFFFF

我的编译器选项中有-std = c99字符串,该字符串应强制执行ll选项,对吗?

作为参考,这是随最新版本的Silicon Labs的Simplicity Studio IDE一起提供的arm-none-eabi-gcc编译器(v4.7.3)。

er

你试过这个吗?

#include <stdio.h>
#include <inttypes.h>

int
main(void)
{
    uint64_t n = 0x123456789;

    printf("n = %#" PRIx64 "\n", n);

    return (0);
}

printf或scanf的实现取决于您使用的libc,可能不支持long long请通过打印PRIx64的值来检查它-我猜在您的情况下它将是“ lx”而不是“ llx”。

粘贴ARM工具链gcc-arm-embedded的inttype.h的一部分

/* 64-bit types */
#if __have_long64
#define __PRI64(x) __STRINGIFY(l##x)
#define __SCN64(x) __STRINGIFY(l##x)
#elif __have_longlong64
#define __PRI64(x) __STRINGIFY(ll##x)
#define __SCN64(x) __STRINGIFY(ll##x)
#else
#define __PRI64(x) __STRINGIFY(x)
#define __SCN64(x) __STRINGIFY(x)
#endif
...
#define PRIx64          __PRI64(x)
#define PRIX64          __PRI64(X)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

找不到带有-std = c99的math.h常量吗?

来自分类Dev

使用-std = c99进行编译时,be64toh未链接或被声明

来自分类Dev

强制编译器达到C99标准

来自分类Dev

需要将C ++模板转换为C99代码

来自分类Dev

如何在带有终端的gcc中启用c99模式

来自分类Dev

是否可以将GCC中的std = c99设置为默认值?

来自分类Dev

在Mac上编译x264:“找不到可用的C编译器”和“ arm-linux-androideabi-gcc:找不到命令”

来自分类Dev

带和不带-std = c99的代码会产生不同的结果(UMAC AE实现)

来自分类Dev

在ARM下有gcc编译器吗?

来自分类Dev

有时gcc在为arm abi编译C ++代码时会将第一个参数放入R1寄存器中吗?

来自分类Dev

指向结构内存分配的C(std = c99)指针

来自分类Dev

由于不支持的gcc编译器版本,Caffe编译失败

来自分类Dev

为什么嵌入式C ++编译器不支持异常?

来自分类Dev

GCC可以警告我有关修改C99中的const字段的问题吗?

来自分类Dev

为什么clang抱怨使用带有'-std = c99'标志的可变长度数组?

来自分类Dev

用C语言编写的程序不要写入文件,并带有-std = c99的警告

来自分类Dev

将C99代码转换为Z3,细微的细节

来自分类Dev

当我使用-std = c99时未声明套接字[c]

来自分类Dev

英特尔C ++编译器给出“此平台不支持卸载结构”错误

来自分类Dev

使用C99的Netbeans C GCC

来自分类Dev

是否可以将GCC中的std = c99设置为默认值?

来自分类Dev

修复ms编译器C代码以在gcc中进行编译

来自分类Dev

csympy cmake错误:编译器不支持C ++ 11构造

来自分类Dev

在ARM下有gcc编译器吗?

来自分类Dev

我仅在使用-std = c99时才得到隐式声明错误

来自分类Dev

如何使用gcc编译器tricore v3.4.6在C中printf sint32?

来自分类Dev

为什么我的GCC编译器不编译C代码?

来自分类Dev

当我将标志“-std=c99”添加到 minwg32 时会发生什么?

来自分类Dev

警告:仅在使用 -std=c99 时隐式声明函数

Related 相关文章

  1. 1

    找不到带有-std = c99的math.h常量吗?

  2. 2

    使用-std = c99进行编译时,be64toh未链接或被声明

  3. 3

    强制编译器达到C99标准

  4. 4

    需要将C ++模板转换为C99代码

  5. 5

    如何在带有终端的gcc中启用c99模式

  6. 6

    是否可以将GCC中的std = c99设置为默认值?

  7. 7

    在Mac上编译x264:“找不到可用的C编译器”和“ arm-linux-androideabi-gcc:找不到命令”

  8. 8

    带和不带-std = c99的代码会产生不同的结果(UMAC AE实现)

  9. 9

    在ARM下有gcc编译器吗?

  10. 10

    有时gcc在为arm abi编译C ++代码时会将第一个参数放入R1寄存器中吗?

  11. 11

    指向结构内存分配的C(std = c99)指针

  12. 12

    由于不支持的gcc编译器版本,Caffe编译失败

  13. 13

    为什么嵌入式C ++编译器不支持异常?

  14. 14

    GCC可以警告我有关修改C99中的const字段的问题吗?

  15. 15

    为什么clang抱怨使用带有'-std = c99'标志的可变长度数组?

  16. 16

    用C语言编写的程序不要写入文件,并带有-std = c99的警告

  17. 17

    将C99代码转换为Z3,细微的细节

  18. 18

    当我使用-std = c99时未声明套接字[c]

  19. 19

    英特尔C ++编译器给出“此平台不支持卸载结构”错误

  20. 20

    使用C99的Netbeans C GCC

  21. 21

    是否可以将GCC中的std = c99设置为默认值?

  22. 22

    修复ms编译器C代码以在gcc中进行编译

  23. 23

    csympy cmake错误:编译器不支持C ++ 11构造

  24. 24

    在ARM下有gcc编译器吗?

  25. 25

    我仅在使用-std = c99时才得到隐式声明错误

  26. 26

    如何使用gcc编译器tricore v3.4.6在C中printf sint32?

  27. 27

    为什么我的GCC编译器不编译C代码?

  28. 28

    当我将标志“-std=c99”添加到 minwg32 时会发生什么?

  29. 29

    警告:仅在使用 -std=c99 时隐式声明函数

热门标签

归档