我在比较两个变量时遇到了一些麻烦,希望有人能提供帮助。
基本上我所做的是:
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)
,值永远不会相同,我 100% 确定 .bin 文件中确实存在 M1。