慕娘1039185
2020-11-04 19:04
main.c
//#include <stdio.h> // 不注释也可以正常运行
#include "test.c" // 我通常不会引用*.c文件,因为这很容易引起重复定义的错误
void printLine(void)
{
printf("******************\n");
}
int main(void)
{
say();
return 0;
}test.c
#include <stdio.h>
extern void printLine(); // 添加这句防止隐式定义警告
static void say() // 可以理解为静态局部函数
{
printLine();
printf("I love imooc\n");
printf("good good study!\n");
printf("day day up!\n");
printLine();
}# 编译代码 gcc 版本 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC) gcc -Wall -Wextra -std=c99 -o main main.c test.c ./main ****************** I love imooc good good study! day day up! ******************
不用extern不给经验的但是可以在注释里加个extern然后就可以了
//#include <stdio.h> // 不注释也可以正常运行
#include "test.c" // 我通常不会引用*.c文件,因为这很容易引起重复定义的错误
void printLine(void) // extern
{
printf("******************\n");
}
int main(void)
{
say();
return 0;
}
定义了static void say() main函数又可以调用 就是说定义static 函数 不包含文件无法调用 包涵文件才能调用 定义extern函数 不包涵文件也可以调用 是这个意思嘛
多谢。
C语言入门
927952 学习 · 21542 问题
相似问题