用虚拟机Linux系统下报错unknown type name
因为定义了结构体,但是运行的时候识别不到改结构体
因为gcc用的是c98的
解决办法就是在每个结果体名前加上struck
#include <stdlib.h>
#include <stdio.h>
struct pcb{ // 定义一个结构体,里面包含的有一个进程相关的信息
char name[10]; //进程名称 (输入)
float arrivetime; //到达时间 (输入)
float servicetime; //服务时间 (输入)
float starttime; //开始时间
float finishtime; //结束时间
float zztime; //周转时间=finishtime-arrivetime
float dqzztime; //带权周转时间=zztime/servicetime
};
/*
*输入进程信息
*/
void input(struct pcb *p, int N) //p为pdb数组名, N为pcb数组的元素个数
{
int i;
printf("\n");
printf("请输入进程的名字 到达时间 服务时间: (例如: 进程1 0 100)\n");
for(i=0; i<=N-1; i++)
{
printf("请输入进程%d的信息:", i+1); // i=0时,输入第1个进程相关信息
scanf("%s", &p[i].name);
scanf("%f", &p[i].arrivetime);
scanf("%f", &p[i].servicetime);
}
}