标题:[求助]看不懂。。。
取消只看楼主
走刀口→超
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:5018
专家分:0
注 册:2006-3-14
 问题点数:0 回复次数:0 
[求助]看不懂。。。

这个代码来自C900里的。我看不懂请高人解释下。

#include <stdio.h>
#include <dos.h>
#include <dir.h>


int function[255]; /* DOS services*/

void interrupt far (*original_handler)();


void interrupt far handler(void)
{
char i;

asm { mov i, ah }

function[i]++;

_chain_intr(original_handler);
}


void main(void)
{
int i;


for (i = 0; i < 255; i++)
function[i] = 0;

original_handler = _dos_getvect(0x21);
_disable();
_dos_setvect(0x21, handler);
_enable();

printf("This is a message\n");
fprintf(stdout, "This is a second message\n");

printf("Current disk is %c\n", getdisk() + 'A');

_disable();
_dos_setvect(0x21, original_handler);
_enable();


for (i = 0; i <= 255; i++)
if (function[i])
printf("Function %x called %d times\n", i, function[i]);
}

搜索更多相关主题的帖子: function services include 
2006-11-17 10:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-103544-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.671576 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved