我很困惑为什么我得到这个警告[警告]指针和整数之间的比较
changeUser
我如何解决?
答案 0 :(得分:5)
fread
返回size_t
值,这是一个无符号整数类型。您的平台将NULL
定义为(void*)0
,这是一种指针类型。
您的编译器发出警告,因为您要比较这些不相关的类型。
解决方案是将!= NULL
放入您的状态:
while (fread(&searchrecord,sizeof(record),1,fl))
无论如何都更清楚。
答案 1 :(得分:0)
fread
返回从流中成功读取的项目数。您应该将其与您传递的实际数字进行比较:
while (fread(&searchrecord, sizeof(record), 1, fl) == 1)
如果您尝试阅读多个项目,则应存储返回值并将其与0
进行比较。