多语言展示
当前在线:1936今日阅读:138今日分享:34

【C语言-11】长代码的简化(宏定义)

在C语言中,可以通过自定义函数来简化一段代码,其实在C语言中有一个专门用来简化代码的方法,那就是在开头定义宏。
工具/原料

C-Free

例:
1

打开C-Free,新建文件。

2

输入以下内容:#include#include#define BLUE SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_INTENSITY); #define RED SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_INTENSITY);#define GREEN SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_INTENSITY) main(){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_INTENSITY) ;   printf('更改为:绿色');  BLUE printf('\n蓝色'); RED printf('\n红色'); GREEN ;printf('\n绿色\n'); }

3

运行结果如图:

4

P.S.如下的这条命令是更改控制台字体颜色的代码,详见《【C语言-22】让控制台输出不同颜色的字符》SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_INTENSITY) ;

说明:
1

宏声明的形式为:#define XXX abcdedfg这样声明后XXX便完全替代了abcdefg;如例中BLUE完全替代了SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_INTENSITY);

2

其效果与写出完整代码一模一样:P.S.例子中主函数中的第一行代码是为了与宏定义作比较,以便于演示,实际是不需要的。

3

另外,宏替代的是所有字符代码,包括标点符号,因此如果宏中没有分号,在代码中记得加上,如图:

推荐信息