苏 苏樱樱 Unregistered / Unconfirmed GUEST, unregistred user! 2000-03-18 #1 如何在c程序中调用dos功能?(我知道有个*dos()的函数,不会用)
S SuperMMX Unregistered / Unconfirmed GUEST, unregistred user! 2000-03-18 #4 不知道她(他?)说的dos功能是什么,int 21h? or something like copy and ...
S SuperMMX Unregistered / Unconfirmed GUEST, unregistred user! 2000-03-25 #6 还是不明白, 不过原来dos 的好多中断都支持 32 位的了。
W wrench Unregistered / Unconfirmed GUEST, unregistred user! 2000-03-27 #8 是Turbo C吗? 用int86x(int intno,union REGS *inregs,union REGS *outregs) 将inregs中个代表寄存器的变量赋值后就可使用
段 段荣誉 Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-27 #9 就目前现状来说,还是不要太多花时间研究DOS下的问题了吧,不满你说, 想当年我在DOS下用C还算半个高手,可现在都忘得差不多了,什么VB,Delphi 之类的又从头来了一遍,(没用C++是因为怕麻烦)。
就目前现状来说,还是不要太多花时间研究DOS下的问题了吧,不满你说, 想当年我在DOS下用C还算半个高手,可现在都忘得差不多了,什么VB,Delphi 之类的又从头来了一遍,(没用C++是因为怕麻烦)。
L lwm8246 Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-29 #10 用Turbo C 嵌"汇编语言" 无所不能 当然 Turbo Pascal 也可以
P partisan Unregistered / Unconfirmed GUEST, unregistred user! 2000-05-05 #11 首先#include <dos.h> 然后,如果只想用DOS功能(INT 21),可以用 intdos(union REGS *, union REGS *) 或 intdosx(union REGS *, union REGS *, struct SREGS *) 函数,后者就多了段寄存器 比如 void DisplayMsg (char *str) { union REGS reg; struct SREGS sreg; reg.h.ah = 9; // 显示字符串的子功能 reg.x.dx = FP_OFF (str); // DSX指向字符串 sreg.ds = FP_SEG (str); intdosx (&reg, &reg, &sreg); } 如果想调用别的中断,可以用 int86(int intno, union REGS *, union REGS *) 或 int86x(int intno, union REGS *, union REGS *, struct SREGS *)
首先#include <dos.h> 然后,如果只想用DOS功能(INT 21),可以用 intdos(union REGS *, union REGS *) 或 intdosx(union REGS *, union REGS *, struct SREGS *) 函数,后者就多了段寄存器 比如 void DisplayMsg (char *str) { union REGS reg; struct SREGS sreg; reg.h.ah = 9; // 显示字符串的子功能 reg.x.dx = FP_OFF (str); // DSX指向字符串 sreg.ds = FP_SEG (str); intdosx (&reg, &reg, &sreg); } 如果想调用别的中断,可以用 int86(int intno, union REGS *, union REGS *) 或 int86x(int intno, union REGS *, union REGS *, struct SREGS *)