extern int left; extern int right,jiansu;
时间: 2023-12-03 14:03:25 浏览: 72
这段代码中的 `extern` 关键字用于声明变量,表示该变量在其他文件中定义。具体来说,`extern int left;` 和 `extern int right, jiansu;` 声明了三个整型变量 `left`、`right` 和 `jiansu`。
这样的声明可以让编译器知道这些变量在其他文件中已经定义,从而在当前文件中可以使用这些变量而不会报错。但是需要注意的是,在当前文件中使用这些变量时,需要确保这些变量在其他文件中的定义是可见的。
通常,当你在一个文件中使用了 `extern` 声明变量时,你需要确保在其他文件中有对应的定义。例如,你可以在其他文件中定义这些变量,如下所示:
```c
// 在其他文件中定义 left、right 和 jiansu
int left;
int right;
int jiansu;
```
这样,在你的当前文件中,就可以使用这些变量了。注意,这些声明和定义要保持一致,包括类型和变量名。
`extern` 关键字的作用是告诉编译器这些变量已经在其他地方定义了,它们的实际定义和内存分配是在其他文件中完成的。这样可以实现跨文件共享变量的功能。
相关问题
解释下面这段代码#ifndef _CLI_H_ #define _CLI_H_ extern int cli_show_open(); extern int cli_show_open_2(); extern int cli_show_open_3(); //open 1 2 3 功能参考ZYYcli.c ZYY注 extern int cli_query_Volume(); extern int cli_query_Brilliance_control(); extern int cli_query_Daily(); extern int cli_query_Web(); extern int cli_query_Timing(); #endif
这段代码是一个头文件,以宏定义的方式防止多次包含。它声明了一些函数的外部接口,这些函数用于在命令行界面(CLI)中显示或查询不同的配置项。其中,cli_show_open()、cli_show_open_2() 和 cli_show_open_3() 函数用于显示不同的 "open" 功能,这些功能参考了 ZYYcli.c 文件中的实现。cli_query_Volume()、cli_query_Brilliance_control()、cli_query_Daily()、cli_query_Web() 和 cli_query_Timing() 函数则分别用于查询音量、亮度、每日任务、网络设置和定时设置的值。这些函数的具体实现应该定义在其他的源代码文件中,而这个头文件只是提供了这些函数的声明,以便其他的源代码文件可以使用它们。
extern int yylineno; extern char* yytext; extern int yylex();
extern int yylineno;是一个外部声明,用于指示当前词法分析器的行号。它是一个整数变量。
extern char* yytext;是一个外部声明,用于存储当前词法分析器所识别的文本。它是一个字符指针。
extern int yylex();是一个外部声明,用于调用词法分析器。它是一个函数。
这些声明通常用于词法分析器和语法分析器之间的交互,以便在语法分析器中使用词法分析器生成的标记。
阅读全文