(C语言)我可以在另一个fopen指令中使用一个fopen指令吗



我正在写一个程序,在这个程序中,我将一些员工的姓名和专业知识保存在一个文件中,我做了另一份文件,把专业知识和薪水放在那里,我想做一个程序,写下每个员工的信息,并将其添加到适当的工资中,所以我使用fread指令打开员工文件,然后在阅读employee信息时,我做了另一个fread,从工资文件中读取,最后打印出该员工的适当工资,不停地,但它不起作用,它什么都不给我,只给员工信息,没有他们的工资,谢谢你帮助

代码:

include <stdio.h>
#include <stdlib.h>
typedef struct { int d,m,y; } dtype ;
typedef struct { char nom[10]; char prenom[10] ; char poste[20]; dtype date ; } LEM ;
typedef struct { char postes[20]; int salaire ; } LP ;

int main()
{
FILE * F;
F= fopen("C:/Users/ipoga/Desktop/BUNCH OF STUFF/TP ALGO/auto/employés.db","r" );
LEM R ;

FILE * E;
E= fopen("C:/Users/ipoga/Desktop/BUNCH OF STUFF/TP ALGO/auto/poste.db","r" );
LP O  ;

fread(&R , sizeof(R),1,F);
while(!feof(F))
{


printf("nom : %s t",R.nom);
printf("prenom : %s t",R.prenom);
printf("poste : %s t",R.poste);
printf("date de rec : %d/%d/%d n",R.date.d , R.date.m ,R.date.y);

fread(&O , sizeof(O),1,E);
while(!feof(E))
{
if(O.postes == R.poste)
{
printf( "salaire : %d ",O.salaire);
}
fread(&O , sizeof(O),1,E);
}

fread(&R , sizeof(R),1,F);

}

}


O.posteschar[]。对于C风格的字符串,不应该与==(比较地址,而不是内容(进行比较,而是与<string.h>中的strcmp()进行比较。

最新更新