C语言其他命令
1.#error
#error命令的作用是编译时输出错误信息,命令形式为:
#error 错误信息
如果预处理器遇到一个#error命令,他将显示错误信息并停止编译过程
实际编程中,#error命令一般与条件编译一起使用,用于测试正常编译中出现的异常现象.
例如:如果不是32位Windows操作系统时,给出的变异错误的预处理指令是:
#ifndef _WIN32
#error _WIN32 must be defined
#ebdif
2.#pragma
#pragma命令的作用是设定编译器的状态或者是指示编译器完成一些特定的动作,命令形式:
#pragma token-string
其中 token-string 表示一条编译器要处理的命令,如果该命令存在则触发执行,否则忽略。
#pragma 命令使编译器能够保持与C语言完全兼容的情况下,针对计算机或操作系统专有的特征,做出不同的编译处理。例如#pragma once表示文件被包含一次。
下面的代码仅用VC编译器,指示链接库文件 winmm.lib
#pragma comment(lib,"winmm.lib")
3.#line
#line命令的作用是改变程序行编号的方式,命令形式为:
#line 常量值 "filename"
其中"filename"可以省略
#line 命令强制编译器按指定的行号对源程序代码重新编号,说明行号来自文件filename,由常量值开始。行号必须在1 ~ 32767 之间。
#line命令会修改预定义宏__LINE__,__FILE__为新值。例如:
#line 151 "copy.c"
printf("line :\t%d,file(%s)\n",__LINE__,__FILE__);
输出为:
line 151,file(copy.c);

浙公网安备 33010602011771号