当我正在阅读“TCPL”时,出现了一个难题,我尝试解释它但失败了。见下图:Page 74 in "TCPL"
1. "getop.c"
和"stack.c"
都包括"calc.h"
而"getch.c"
没有。但是,在"calc.h"
中它还声明了int getch(void)
中定义的函数void ungetch(int)
和"getch.c"
。
2.程序运行正常。
我的问题是:头文件"calc.h"
如何与源文件"getch.c"
建立连接,而不是include"..."
?
函数定义也是一个声明。所以“getch.c”中没有必要明确声明getch
和ungetch
。包含“calc.h”以确保“getch.c”中的定义与其他c文件中使用的声明匹配仍然是一个好主意。