看不懂源码真的好痛苦呀,请大哥帮忙解释一下,我是一个初学c者
#include <stdio.h>
#include <dos.h>
#include <conio.h>
#define VK_ESC 0x11b
#define TIMER 0x1c
#define d //定义这个d有什么呀
int TimerCounter=0;
void interrupt(*oldhandler)(d); // 这些d有什么函义
void interrupt newhandler(d)
{
TimerCounter++;
oldhandler();
}
void SetTimer(void interrupt (*IntProc)(d))
{
oldhandler=getvect(TIMER);
disable();
setvect(TIMER,IntProc);
enable();
}
void KillTimer()
{
disable();
setvect(TIMER,oldhandler);
enable();
}
void main(void)
{
int key,time=0;
SetTimer(newhandler);
for(;;)
{
if(bioskey(1))
{
key=bioskey(0);
if(key==VK_ESC)
{
printf("user\n");
break;
}
}
if(TimerCounter>18)
{
TimerCounter=0;
time++;
printf("%d\n",time);
if(time==10)
{
printf("program\n");
break;
}
}
}
KillTimer();
}