/*
一、条件编译的格式:
1、#ifdef 标识符
程序段 1
#endif
2、#ifdef 标识符
程序段 1
#else
程序段 2
#endif
作用:若所指定的标识符已经被#define命令定义过,则在程序编译阶段编译程序段 1;否则编译程序段 2。
3、#ifndef 标识符
程序段 1
#else
程序段 2
#endif
作用:若所指定的标识符未被#define命令定义过,则在程序编译阶段编译程序段 1;否则编译程序段 2。
4、#if 表达式
程序段 1
#else
程序段 2
#endif
作用:当指定的表达式值为真(非零)时编译程序段 1;否则编译程序段2
二、条件编译的优点:减少被编译的语句、减少目标程序的长度、减少运行时间;
*/
/*
输入一行字母字符,根据需要设置条件编译,使之能将字母全改为大写输出,或改为小写字母输出。
*/
#include<stdio.h>
#define LETTER 1
int main(int argc, const char *argv[])
{
char str[20] = "c language";
char c;
int i = 0;
while ((c = str[i]) != '\0')
{
i++;
#if LETTER
if (c >= 'a'&&c <= 'z')
c = c - 32;
#else
if (c >= 'A'&&c <= 'Z')
c = c + 32;
#endif
printf("%c",c);
}
printf("\n");
return 0;
}
|
|