一、介绍

#error、#warning、#line也是常用的调试利器

#error 打印自定义的错误信息

#warning 打印自定义的警告信息

#line 设置文件和行号

二、用法

#error 要打印的信息 (不需要引号)

#warning 要打印自定义的警告信息(不需要引号)

#line 行号 文件名

三、示例

1、#error

比如我们显示屏一般会宏定义宽度和高度,但是如果忘了编译器并不会报错

可以通过如下方式实现报错

#define LCD_WEIGHT 1024

#define LCD_HEIGHT 768

#ifndef LCD_WEIGHT || LCD_HEIGHT

#error no define LCD parameter

#endif

2、#warning

同理error,这是这是发的警告

#define LCD_WEIGHT 1024

#define LCD_HEIGHT 768

#ifndef LCD_WEIGHT || LCD_HEIGHT

#warning no define LCD parameter

#endif

3、#line

#line 1 “a.c”

printf("[%s : %d] %s\n",FILE,LINE,“a.c”);

#line 5 “b.c”

printf("[%s : %d] %s\n",FILE,LINE,“b.c”);

#line 10 “c.c”

printf("[%s : %d] %s\n",FILE,LINE,“c.c”);