contattoT ele, contatto;
int pos1 = -1 * ((int)sizeof(contattoT)), pos2 = -2 * ((int)sizeof(contattoT));
fflush(stdin);
printf("Matricola ");
cin >> ele.matricola;
fflush(stdin);
printf("\n");
printf("Nome ");
cin >> ele.nome;
printf("\n");
printf("Cognome ");
cin >> ele.cognome;
printf("\n");
printf("Anni ");
cin >> ele.anni;
printf("\n");
contatti=fopen(PATH,"rb+");
fseek(contatti,0,SEEK_END);
fwrite(&ele, sizeof(contattoT), 1, contatti);
fseek(contatti, pos2, SEEK_CUR);
while((fread(&contatto,sizeof(contattoT),1,contatti))&&(strcmp(contatto.matricola, ele.matricola) > 0))
{
fflush(contatti);
system("pause"); //HERE
fwrite(&contatto, sizeof(contattoT), 1, contatti);
fseek(contatti, pos2, SEEK_CUR);
fwrite(&ele, sizeof(contattoT), 1, contatti);
fseek(contatti, pos2, SEEK_CUR);
}
fclose(contatti);
Привет! Я пытаюсь применить алгоритм сортировки вставки к двоичному файлу, но после системной паузы выдает ошибку: «Flu sh между последовательным чтением и записью: stream.has_any_of (_IOREAD)».
Я совершенно уверен, что алгоритм правильный, поэтому я попытался поставить этот fflu sh, но ничего не изменилось ... Вы можете мне помочь?
IDE - это VSCommunity 2019.