鱼C论坛

 找回密码
 立即注册
查看: 4512|回复: 8

问题很急,麻烦各位大哥大姐了

[复制链接]
发表于 2012-6-5 23:37:58 | 显示全部楼层 |阅读模式
2鱼币

可不可以用宏定义来定义结构体成员?
比如#define A p->num         ...printf("%d",A);与printf("%d",p->num);会是同一个效果么?
如果我这样可以么?#define A p->num         ...char m;scanf("%c",&m);printf("%d"m);与printf("%d",p->num);如果我输入的是A会是同一个效果么?

小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-6-6 00:53:52 | 显示全部楼层
第二个应该不可以吧 0.0
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2012-6-6 07:30:11 | 显示全部楼层
应该会是同一效果,最好找个程序试试!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2012-6-6 07:36:58 | 显示全部楼层
p->num是指针变量p所指向的结构体数据num的值,#define A p->num         ...printf("%d",A);与printf("%d",p->num)将是同一效果!#define A p->num         ...char m;scanf("%c",&m);printf("%d"m);与printf("%d",p->num);,不是同一效果!第一个printf将在屏幕上显示你键盘输入的字符!下面的printf将显示p指向的结构体num成员的值!以上均个人观点!如有错误请及时指正!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2012-6-6 08:33:18 | 显示全部楼层
第一种情况一样,第二种情况第一个printf输出的是你输入字符的ASCII码,自然不一样了。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2012-6-6 08:45:44 | 显示全部楼层
宏只是实现了字符串的替换
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2012-6-7 17:33:32 | 显示全部楼层
书上没讲的,在初学阶段自己最好不要去考虑其他细节,宏能不能实现,对自己根本没什么帮助,更重要的是自己对代码的理解,
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2012-6-9 22:06:23 | 显示全部楼层
感觉就是能了,也没有意义吧,不是有typedef嘛,用这个定义结构就是很方便的啊
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2013-6-15 09:35:54 | 显示全部楼层
过来学习一下。。。。。。。。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-11-13 16:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表