为什么这代码在TUBRO 2.0 不能运行?

来源:百度知道 编辑:UC知道 时间:2024/05/20 02:35:08
#include<stdio.h>
#include<dos.h>
main()
{
int drive;
drive=bdos(ox19,0,0);
printf("Current drive is %c\n",'A'+drive);
}
drive=bdos(ox19,0,0); 这句什么意思,怎么来的?

drive=bdos(ox19,0,0)中的ox19应该是0x19(x前是数字0,不是字母o).
修改后应该能够运行。

bdos(): MS_DOS系统功能调用,功能19h是取当前缺省驱动器号(A:0, B:1...)。bdos(0x19, 0, 0)相当于以下汇编语句:

MOV ah,19h
MOV al,0
MOV dx,0
int 21h
AX中返回驱动器号。

bdos应该是dos.h中定义的一个库函数,上网找找看。