位置:首页 > 软件操作教程 > 编程开发 > C语言 > 问题详情

C语言 条件编译的格式

提问人:刘团圆发布时间:2020-12-01

条件编译一般有三种格式: 

(1)#if的一般格式

#if表达式 

    程序段1 

#else

    程序段2

#endif

    作用:当指定常量表达式的值真(非0)时,编译程序段1,否则编译程序段2。表达式可以由程序设计人员设计,以达到编译不同程序段的目的。

    程序段可以是语句或语句组,也可以是命令行。

【例题】实现条件编译

    实现编译一个程序的两个程序段。这两个程序段分别是:将字符串中所有的小写字母改为大写字母;将字符串中所有的大写字母改为小写字母。

    算法分析:

    设置一个符号常量,当符号常量为1时,编译将小写改为大写的程序段;当符号常量为0时,实现编译将大写改小写字母的程序段。

程序如下:

#include <stdio.h>

#deflne FLAG 0 

void main()

{

    char s [80]; 

    int i; 

    gets(s):

#if FLAG

    for(i=0;s[i]!*=*0;i++)

        if(s[i]>'a' && s[i]<'z')

            s[i]=s[i]-32;

#else

    for (i=0;s[i]!=0;i++)

        if(s[i]>'A' && s[i]<'Z')

            s[i]=s[i]+32;

#endif 

puts(s);

}

程序运行,输入:

ABCDEFG

输出结果为:

Abcdefg

将符号常量FLAG的值改为1,再运行,查看运行结果。

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部