搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 求助宏定义的问题
标题:
求助宏定义的问题
只看楼主
伤心的我
等 级:
新手上路
帖 子:82
专家分:0
注 册:2008-5-24
楼主
问题点数:0 回复次数:6
求助宏定义的问题
题目是这样的:设计一个名为star的带参数的宏,参数指出星号的个数。提示:宏的作用只是替换内容,无论数值、语句,甚至多条语句都一样。 ●想了半天都没把这题思路出来,谁能帮我给出思路。谢谢!
搜索更多相关主题的帖子:
定义
语句
参数
思路
2008-05-25 13:42
miaohg
等 级:
新手上路
帖 子:16
专家分:0
注 册:2008-5-25
第
2
楼
得分:0
#define star(n) for(i=0;i<n;i++){putchar('*');}
设计弊端:star(n)只能以单独语句出现。
2008-05-25 14:32
miaohg
等 级:
新手上路
帖 子:16
专家分:0
注 册:2008-5-25
第
3
楼
得分:0
#define star(n) int i;for(i=0;i<n;i++){putchar('*');}
2008-05-25 14:34
flyue
来 自:江南西道
等 级:
贵宾
威 望:
19
帖 子:3465
专家分:1563
注 册:2006-6-20
第
4
楼
得分:0
#define star(n)\
int i;\
for(i = 0; i < n; i++)\
{\
putchar('*');\
}
天之道,损有余而补不足.人之道则不然,损不足以奉有余.孰能有余以奉天下,唯有道者.
2008-05-25 15:04
prinse
等 级:
新手上路
帖 子:20
专家分:0
注 册:2008-4-8
第
5
楼
得分:0
试试看
用C++的话不妨这么弄:
#define star(n) (cout.fill('*'),cout.width(n),cout<<'*')
然后你可以类似下面这么用:
star(10)<<endl;
2008-05-25 19:40
伤心的我
等 级:
新手上路
帖 子:82
专家分:0
注 册:2008-5-24
第
6
楼
得分:0
谢谢楼上的,getch()用scanf()代替应该也可以吧!
2008-05-25 20:05
prinse
等 级:
新手上路
帖 子:20
专家分:0
注 册:2008-4-8
第
7
楼
得分:0
getch() 不是标准函数。好象是早期 Borland 和 Mcrosoft 才支持的函数。记得好象是直接处理键盘缓冲的。这个函数好象没有同样功能的标准函数。
2008-05-25 20:51
7
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-215846-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.765246 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved