搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 一个很简单的代码,为什么会提示出错?到底错在哪里呢?
标题:
一个很简单的代码,为什么会提示出错?到底错在哪里呢?
只看楼主
hao02171990
等 级:
论坛游民
帖 子:17
专家分:17
注 册:2012-6-20
第
11
楼
得分:0
2012-08-14 11:52
stophin
等 级:
黑侠
威 望:
3
帖 子:227
专家分:618
注 册:2010-3-26
第
12
楼
得分:0
define不能加分号
2012-08-14 13:20
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
13
楼
得分:0
一般的#define往往被放在.h中,这种错误,到时你怎么查。现在是写在.c或.cpp中,能够一眼看到,才有运气看得出来,否则,打破你的头都想不到居然是#define的问题。C/C++建议#define的宏标识符用大写字母,用意就是特别提醒读代码的人意识到这是宏,存在某种危险,必要时应该查看宏的展开。如果它真是如楼主所理解的那样是视为常量变量,就不需要这样——事实上宏不是变量,更不是函数!
授人以渔,不授人以鱼。
2012-08-14 13:40
chuanglan
等 级:
论坛游民
威 望:
2
帖 子:91
专家分:29
注 册:2012-8-14
第
14
楼
得分:0
谁说typedef不用分号的?宏定义才不需要,还有宏定义不是不能用分号,关键在于怎么用?需不需要用#define Circle {
int i;\
puts("please input the radius");\
scanf("%d",&i); \
return 2*PI*i; }\
这样也是可以的;
2012-08-14 13:45
chuanglan
等 级:
论坛游民
威 望:
2
帖 子:91
专家分:29
注 册:2012-8-14
第
15
楼
得分:0
当然你还要明白一点就是宏定义只是简单代换,先把代替的内容代到源代码中去,然后再编译。。
2012-08-14 13:46
孟忠斐
等 级:
新手上路
帖 子:2
专家分:0
注 册:2012-8-14
第
16
楼
得分:0
#define n 5;相当于 把n定义为5;
2012-08-14 17:34
16
2/2页
1
2
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-376763-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.373877 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved