| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1097 人关注过本帖
标题:[求助]有关条件编译
只看楼主 加入收藏
cherrysindow
Rank: 2
等 级:论坛游民
帖 子:124
专家分:10
注 册:2005-10-21
收藏
得分:0 
以下是引用gree在2005-12-6 9:30:00的发言:
我想过的是用switch
switch(num)
{
case 33:
#define ABC33
break;
case 34
#define ABC34
break;
.
.
.
default: break;
}

这样当然不行了

预处理是在编译器的事情

要在所有的程序代码前的


虽然我很普通,但是我很讲道理 如果我的问题冒犯了您 请不要生气 因为我是无意的
2005-12-06 17:46
gree
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2005-11-2
收藏
得分:0 

我知道错了,我对C的整个程序处理流程理得不太顺,之所以写出来只是想说大家帮我出谋划策。


2005-12-06 20:12
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 

#include<stdlib.h>
#include<stdio.h>?

#define num 34
#if num==33
#define ABC33
#elif num==34
#define ABC34
#elif num==35
#define ABC35
#endif
int main()
{
#if defined ABC33
printf("ABC33");
#elif defined ABC34
printf("ABC34");
#elif defined ABC35
printf("ABC35");
#endif

}


九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2005-12-07 10:26
gree
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2005-11-2
收藏
得分:0 
“#define num 34”
这行程序不是已经限定了num=34了吗?
可我的num是通过表达式或都输入得到的呀

2005-12-07 16:23
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 
以下是引用gree在2005-12-7 16:23:00的发言:
“#define num 34”
这行程序不是已经限定了num=34了吗?
可我的num是通过表达式或都输入得到的呀

我前面让你去复习有关预处理指令,就是因为你有关预处理指令的认识有根本性的错误。

你看错要看的内容了,你对预处理指令有错误认识,预处理指令是给编译器的工作指令。这些编译指令通知编译器在编译工作开始之前对源程序进行某些处理。而不是程序运行时指令。

怎么可能在程序运行期数据或其它的用预处理指令来处理?


九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2005-12-07 16:35
快速回复:[求助]有关条件编译
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014434 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved