可能重复:
结构混淆
我需要帮助...我的代码中有一些错误(我在这些行中添加了一些注释),例如:
错误:“bookRecord”之前的预期表达式</p>
.....这是一个程序,它将一些书籍数据存储在一个结构数组中,并使用一个函数来查看用户搜索的书籍是否可用..
所以我想修复错误并使 bookRecord 看起来不像一个变量,
你知道我该怎么做吗,因为我在这里堆了几个小时!
提前致谢!
#include<stdio.h>
#include <stdlib.h>
#include <string.h>
#define TRUE 1
#define FALSE 0
#define NUM_BOOKS 5
typedef struct {
int minute;
int hour;
} timeT;
typedef struct {
char title[50];
char author[50];
int year;
int isOut;
timeT time;
int isBlank;
} bookRecord;
/* given array of struct */
bookRecord stacks[NUM_BOOKS]=
{
{"C How To Program", "Deitel", 2006, FALSE, {0, 0}, TRUE} ,
{"The Old Capital", "Yasunari Kawabata", 1996, FALSE, { 0, 0}, TRUE},
{"", "", 0, FALSE, {0,0}, FALSE},
{"", "", 0, FALSE, {0,0}, FALSE},
{"", "", 0, FALSE, {0,0}, FALSE}
};
int requestBook(bookRecord title[],bookRecord author[]){ /* compiler error */
int i;
for(i=0;i<=NUMBOOKS-1;i++){
if(strcmp(stacks[i].tittle ,bookRecord.title[0]) == 0 &&
strcmp(stacks[i].author ,bookRecord.author[0]) == 0 ){
return 1;
}
}
return 0;
}
int main (int argc, char*argv[]) {
int t;
scanf("%s ",bookRecord.title); /* compiler error */
scanf("%s",bookRecord.author); /* compiler error */
t=requestBook(bookRecord.title, bookRecord.author); /* compiler error*/
printf("%d",t);
return 0;
}