社区
C语言
帖子详情
结构体定义里有宏定义,对吗?有什么意义?偶不懂,请高手指点,谢谢!
IamScout
2004-03-28 09:03:15
偶看源代码,发现有的程序有如下代码段:
struct aa{
int bb;
char cc;
#define DDD 0x00000001;
#define EEE 0x00000011;
………………
}
就是在结构体定义中有宏定义,偶不懂这是什么用法,有什么意义,在结构体在定义对象时不是有重复宏定义了吗?请高手解惑,谢谢!!!
...全文
610
13
打赏
收藏
结构体定义里有宏定义,对吗?有什么意义?偶不懂,请高手指点,谢谢!
偶看源代码,发现有的程序有如下代码段: struct aa{ int bb; char cc; #define DDD 0x00000001; #define EEE 0x00000011; ……………… } 就是在结构体定义中有宏定义,偶不懂这是什么用法,有什么意义,在结构体在定义对象时不是有重复宏定义了吗?请高手解惑,谢谢!!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
darkstar21cn
2004-03-29
打赏
举报
回复
liao2001(知之为知之,不知为不知。。。):同感!无予补充。
liao2001
2004-03-29
打赏
举报
回复
从语言的角度来说,和结构体外定义的没有什么区别。
它的意义:告诉你(阅读源代码者),这几个宏将只用于这个结构体。
比方说:char *strcat(char *dest,const char *src)
那个const是干什么用的?就是告诉读者,不用当心那个入参会被修改,同时隐含“源串”的意思。
这些是程序员交流的手段,除非你的代码只是自己一个人看。
bshaozi
2004-03-29
打赏
举报
回复
我觉的宏定义的是内存地址,
在程序运行的时候将结构体储存在这个宏代表的地址内(个人意见)
moswawa
2004-03-29
打赏
举报
回复
可以用这种形式对齐.
tms320ad50
2004-03-29
打赏
举报
回复
可能在debug时有用吧
chenzhichao2008
2004-03-29
打赏
举报
回复
应该跟结构定义没什么区别的吧:
它也应该不是结构中的一个成员吧
#include<iostream.h>
#include"stdlib.h"
struct aa{
int bb;
char cc;
#define DDD 5
#define EEE 6
};
void main(void)
{
struct aa k;
cout<<k.DDD;//出错
cout<<DDD;//正确
system("pause");
}
ruihouwei
2004-03-29
打赏
举报
回复
liao2001(知之为知之,不知为不知。。。)说得是对的!:)果然是高手!
纠正chenzhichao2008(陈智超)的说法,这几个宏虽然是在结构体中第定义的,但不能说是结构体里面地成员!
所以像这样写:k.DDD是错的!
ruihouwei
2004-03-29
打赏
举报
回复
liao2001(知之为知之,不知为不知。。。)说得是对的!:)果然是高手!
纠正chenzhichao2008(陈智超)的说法,这几个宏虽然是在结构体中第定义的,但不能说是结构体里面地成员!
所以像这样写:k.DDD是错的!
IamScout
2004-03-28
打赏
举报
回复
不好意思,偶手顺了一下。
不过偶还是不明白,例如这样做有什么好处,再者,我看结构体中定义了宏,下面也没有用到。
zhangfjj
2004-03-28
打赏
举报
回复
#define DDD 0x00000001;
#define EEE 0x00000011;//后面怎么有分号呢?
yzwpf
2004-03-28
打赏
举报
回复
意义在于一般这样定义的DDD ,EEE表示只用于该结构,你试试在结构体外看能不能使用DDD。
xiaonanln
2004-03-28
打赏
举报
回复
据我个人观察,这和在外面申请没有任何区别
IamScout
2004-03-28
打赏
举报
回复
首先声明程序绝对是对的。
C语言结构体
里
的成员数组和指针
你先别下这个结论,相信这篇文章会对你理解C语言有帮助。这篇文章产生的背景是在微博上,看到@Laruence同学出了一个关于C语言的题,微博链接。微博截图如下。我觉得好多人对这段代码的理解还不够深入,所以写下了这...
查看结构体成员的大小和偏移地址的方法
这个是不小心被我撞见的,看到#define
宏定义
比较特别,仔细看了一下,发现原来有如此作用(
请
不要怪我少见多怪哦)。自己编写一小程序试之,贴出代码与运行结果与大家共享。代码:#include #define PACKVALUE 4#...
短小精悍的宏(整理篇)
c/c++
里
面常常需要定义一些宏,以提高编程效率和调试,同时使得代码结构简练。这
里
从网上查找了一下,并集中整理,方便以后使用。个别地方加了一点自己的注释(红色字体表示)。其实都是些小儿科的编程技巧了,
请
勿...
该不会还有人不懂用C语言写扫雷游戏吧
该不会有人还不懂用C语言实现扫雷游戏吧?如果有,那我教你!
线性表的基本操作
在粗略学习一遍数据结构之后,压根就没有搞懂其中的逻辑,后来了明白学习数据结构的重要性,打算再利用一大段空闲时间重新拾起数据结构的学习。还站在IT行业门口的我,打算一步一步爬进去,跪着欣赏大佬的笔记和心得...
C语言
70,022
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章