黑马程序员技术交流社区

标题: 条件编译总结 [打印本页]

作者: wangshengjie    时间: 2015-3-10 23:54
标题: 条件编译总结
/*
        一、条件编译的格式:
                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;
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2