2 つの変数を比較するのに問題があります。誰かが助けてくれることを願っています。
基本的に私がしていることは次のとおりです。
printf("\n\n +* Introduza o %d Prato:", i + 1);
scanf("%s", &pratos_novo->prato);
ver=verifica_prato(pratos_novo->prato);
if(ver == 1)
/*PROCESS*/
M1は.binファイルに存在するため、尋ねられたときに入れました
関数呼び出し:
int verifica_prato(char* p) {
k = (struct item*) malloc(sizeof(item));
while((fread(k, 1, sizeof(item), f)) != NULL) {
if((*k).id == p){
fclose(f);
return 1;
}
}
fclose(f);
return 0;
}
私の目標は、M1 を入れたときに 1 を返すことです。
構造体アイテム:
struct item{
char id[5];
int ing[10];
float qtd[10];
};
問題はここにあります: (*k).id==p)
、値は決して同じではなく、M1 が .bin ファイルに存在することを 100% 確信しています。