我最近读了一些st终端源代码.在那里我找到了这段代码:
switch (csiescseq.mode[0]) {
default:
unknown:
fprintf(stderr, "erresc: unknown csi ");
csidump();
/* die(""); */
break;
case '@': /* ICH -- Insert <n> blank char */
Run Code Online (Sandbox Code Playgroud)
"未知"关键字(?)有什么作用?我无法在任何地方找到任何"未知"关键字.感谢您的建议.
Why does gcc ignore these header guards in this simple test program?
The header file is:
#ifndef MYHEADER_H
#define MYHEADER_H
#warning "header declared"
int some_int=0;
#endif
Run Code Online (Sandbox Code Playgroud)
And the two .c files are: main.c:
#include "header.h"
int main ()
{
return some_int;
}
Run Code Online (Sandbox Code Playgroud)
source.c:
#include "header.h"
int get_int()
{
return some_int;
}
Run Code Online (Sandbox Code Playgroud)
When compiling with:
gcc -o out main.c source.c
Run Code Online (Sandbox Code Playgroud)
I get the following output:
In file included from main.c:1:
header.h:4:2: warning: #warning "header declared" [-Wcpp]
4 | #warning "header declared" …Run Code Online (Sandbox Code Playgroud)