我要精通c语言 国嵌,【C语言学习】国嵌18__#error和#line

1:#error的用法

#error用于生成一个编译错误消息,并停止编译用法

#error message

注:message不需要用双引号包围

#error编译指示字用于自定义程序员特有的编译错误消息

类似的,#warning用于生成编译警告,但不会停止编译

#include 

#define CONST_NAME1 "CONST_NAME1"

#define CONST_NAME2 "CONST_NAME2"

int main()

{

#ifndef COMMAND

#warning Compilation will be stoped ...

#error No defined Constant Symbol COMMAND

#endif

printf("%s\n", COMMAND);

printf("%s\n", CONST_NAME1);

printf("%s\n", CONST_NAME2);

return 0;

}

2:#line的用法

#line用于强制指定新的行号和编译文件名,并对源程序的代码重新编号用法

#line number filename

注:filename可省略

#line编译指示字的本质是重定义__LINE__和__FILE__

#include 

#line 14 "Hello.c"

#define CONST_NAME1 "CONST_NAME1"

#define CONST_NAME2 "CONST_NAME2"

void f()

{

return 0;

}

#line 14 "Hello.c"

int main()

{

printf("%s\n", CONST_NAME1);

printf("%s\n", CONST_NAME2);

printf("%d\n", __LINE__);

printf("%s\n", __FILE__);

f();

return 0;

}

你可能感兴趣的:(我要精通c语言,国嵌)