This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ARMv8-A 数据类型

HI expert:

    最近一直在看ARMv8架构的spec,在网上下载了一个的编译器,请问在具体使用ARMv8时和之前在ARMv7上关于各种数据类型所占的字节数有区别吗?比如,int, long, long long, pointer等数据类型的大小.

麻烦解答一下,谢谢!然后能够推荐一款编译器用于Cortex-A53开发?

Parents
  • 不同编译器、不同的架构会存在不同,这个不能依赖编译器,正是为了解决题主担心的问题,ANSI-C才引入了stdint.h

    所以,以后不要用编译器自己的类型,应该用 stdint.h里面定义的类型,来增强代码的可移植性。

    常见的数据类型有:

    uint8_t   int8_t

    uint16_t int16_t

    uint32_t int32_t

    uint64_t int64_t

    ...

    另外bool是在stdbool.h里面定义的。

    通常我们在代码里面会这么写:

    #include <stdint.h>

    #include <stdbool.h>

Reply
  • 不同编译器、不同的架构会存在不同,这个不能依赖编译器,正是为了解决题主担心的问题,ANSI-C才引入了stdint.h

    所以,以后不要用编译器自己的类型,应该用 stdint.h里面定义的类型,来增强代码的可移植性。

    常见的数据类型有:

    uint8_t   int8_t

    uint16_t int16_t

    uint32_t int32_t

    uint64_t int64_t

    ...

    另外bool是在stdbool.h里面定义的。

    通常我们在代码里面会这么写:

    #include <stdint.h>

    #include <stdbool.h>

Children