我從書上看到一個進程調度的程序,但是不能調試通過,是哪兒錯了啊?該怎么改呢?#include<iostream.hintm1;intm2;struct{intid;intwaiter1;intpriority;}pcb[4];struct{intvalue;intwaiter2;}sem[3];charstack[11][4];inti,ep;charaddr;voidinit();intfind();intw2();intprocess1();intprocess2();intprocess3();intp(int,int,char);intv(int,int,char);voidmain(){init();cout<<"系統程序結束"<<endl;}voidinit(){intj,k;pcb[0].status='w';pcb[0].priority=4;for(j=1;j<=3;j++){pcb[j].id=j;pcb[j].status='r';pcb[j].waiter1=0;pcb[j].priority=j;}for(j=1;j<=2;j++){sem[j].value=1;sem[j].waiter2=0;}i=0;ep=0;addr='0';m1=0;m2=0;for(j=1;j<=10;j++){for(k=1;k<=3;k++)stack[j][k]='0';}}intfind(){intj;for(j=1;j<=3;j++)if(pcb[j].status=='r')return(j);return(0);}intw2(){intpd;pd=find();if(pd==0)return(0);elseif(ep==0){pcb[pd].status='e';ep=pd;cout<<"進程"<<ep<<"正在執行"<<endl;}elseif(pcb[pd].priority 前面的函數聲明和調用都是p(...)和v(...),為什么后面的函數體是P(...)和V(...)了?C語言可是區分大小寫的 你應該把系統的錯誤提示寫下來啊熱心網友
熱心網友