8.5.2 #error命令
error命令用于强制使编译程序停止编译操作的编译指令,并同时输出错误信息提示。该命令主要用于程序调试,其使用的一般形式如下。
error“message”
其中,“message”为显示的错误提示的信息。#error命令的程序示例如下。
include<stdio.h>//头文件
define SCORE 85//宏定义
void main()//主函数
{
ifdef SCORE//条件编译
printf(“SCORE is defined!\n”);//如果宏SCORE存在,则执行该语句
else
error“SCORE is not defined!\n”//如果宏SCORE不存在,则执行该处
endif
ifndef GREED
error“GREED is not defined!\n”//如果宏GREED存在,则执行该处
else
printf(“GREED is defined!\n”);//如果宏GREED不存在,则执行该语句
endif
}
本例中,先定义了宏名SCORE,接着在主程序中通过#ifdef和#ifndef命令来判断宏名SCORE和GREED是否被定义过。如果SCORE没有定义过则停止编译,并输出错误信息“SCORE is not defined!”;如果GREED没有定义过则停止编译,并输出错误信息“GREED is not defined!”。该程序在编译时的输出信息,如图8.1所示。
图 8.1 编译输出错误信息