1. 宏定义:
#include <stdio.h>
// 宏定义
#define PI 3.14159
#define SQUARE(x) ((x) * (x))
int main() {
printf("PI: %.2f\n", PI);
int result = SQUARE(5);
printf("Square of 5: %d\n", result);
return 0;
}
2. 条件编译:
#include <stdio.h>
#define DEBUG // 可以在编译时定义或取消定义
int main() {
// 使用条件编译
#ifdef DEBUG
printf("Debug mode is enabled.\n");
#else
printf("Debug mode is disabled.\n");
#endif
return 0;
}
3. 文件包含:
// header.h
#ifndef HEADER_H // 防止重复包含
#define HEADER_H
void printMessage();
#endif
// main.c
#include <stdio.h>
#include "header.h"
int main() {
printMessage();
return 0;
}
4. 条件编译和宏的高级用法:
#include <stdio.h>
#if defined(DEBUG) && !defined(TEST)
#define MESSAGE "Debug mode is enabled."
#elif defined(TEST)
#define MESSAGE "Test mode is enabled."
#else
#define MESSAGE "No special mode is enabled."
#endif
int main() {
printf("%s\n", MESSAGE);
return 0;
}
预处理器的使用可以帮助程序员在编译之前进行一些文本处理,使得代码更具有灵活性和可维护性。然而,过度使用预处理器指令可能会使代码变得难以理解和维护,因此需要谨慎使用。
转载请注明出处:http://www.zyzy.cn/article/detail/3189/C语言