首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用gnu gcc编译器定义类型

用gnu gcc编译器定义类型
EN

Stack Overflow用户
提问于 2014-11-20 18:28:29
回答 1查看 102关注 0票数 0

我用gnu手臂精灵gcc编译了一些类型定义,标志设置为-02 -g.在我用objdump创建了一个.lst文件之后,下面的命令行选项设置了-s -S -D。

我在列表中找不到类型定义。不是在.text,也不是在.data区?

代码语言:javascript
复制
unsigned int state_0=0x6;
typedef unsigned char uc32;

typedef struct{
     unsigned int mask;
     uc32 id;
     uc32 type;
     unsigned int attribute;
} Pin;

unsigned int state=2;

void foo(void)
{
    state=0;
    state=1;
}

void foo_1(void)
{
   Pin pin_1;

   uc32 loop=4;
   foo();
   pin_1.mask=0x5;
   state=0x07;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-20 21:09:16

typedef为现有类型创建别名--不再;编译器将将其解析为实际类型并生成相应的代码,类型名称符号不需要出现在最终代码或调试信息中。

此外,类型定义不实例化数据对象,它没有位置,因此不会出现在链接映射中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27046880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档