首页 文章

Eclipse CDT如何理解__SIZE_TYPE__?

提问于
浏览
1

当我在Eclipse中打开 size_t 的声明时,我从GCC获得了 stddef.h 的行: typedef __SIZE_TYPE__ size_t;

我知道 __SIZE_TYPE__ 没有在任何头文件中定义,但是编译器知道 .

但是,Eclipse CDT如何理解 __SIZE_TYPE__size_t 是整数类型,所以它可以进行代码分析等?它是否内置于CDT中?

2 回答

  • 0

    我终于弄明白了 .

    __SIZE_TYPE__ 可以在项目属性 - > C / C常规 - >预处理器包含路径,宏等 - >条目 - > CDT GCC内置编译器设置中找到 __SIZE_TYPE__ = unsigned int.

    查看提供程序选项卡,CDT通过运行 ${COMMAND} -E -P -v -dD ${INPUTS} 从GCC中提取列表,其中 ${COMMAND} 是gcc而 ${INPUTS} 是空C或C文件 .

    -E 仅预处理 -P 无行标记 -v verbose -dD 转储所有宏定义 .

    GCC输出各种内部定义,包括 #define __SIZE_TYPE__ unsigned int

  • 5

    Eclipse不理解 __SIZE_TYPE__ - 那是GCC的事情 . 例如:

    http://gcc.gnu.org/onlinedocs/gccint/Type-Layout.html

    http://gcc.gnu.org/onlinedocs/gcc-3.1/gccint/Driver.html

    这是一个更完整的解释:

    Where is c++ size_t defined in linux

相关问题