ALTE DOCUMENTE
|
|||||
Функции и внешние переменные, входящие в состав «C»-программы, не обязаны компилироваться одновременно; программа на исходном языке может располагаться в нескольких файлах, и ранее скомпилированные процедуры могут загружаться из библиотек. Два вопроса представляют интерес:
val sp push pop clear
int sp = 0;
double val[maxval];
double push(f)
double pop()
clear()
val sp push pop clear
extern
int sp;
double val[maxval];
sp val
extern int sp
extern double val
sp int val double
extern extern extern
val sp push pop clear
int sp = 0; // Указатель стека
double val[maxval]; // Максимальная глубина стека
extern int sp;
extern double val
double push f
double pop
clear
extern в файле 1 находятся выше и вне трех указанных функций, они относятся ко всем ним; одного набора описаний достаточно для всего файла 2.
#include extern
getop number
getop number getop toobig
getop char s int lim
if (i < lim)
else
}
getch ungetch
getch ungetch getch
ungetch getch getchar
getch ungetch getch ungetch
#define bufsize 100
char buf[bufsize]; // ungetch
int bufp // След. Свободная позиция в буфере
getch
ungetch int c
ungets(s) ungets buf bufp ungets
getch ungetch
getch ungetch eof eof
|