FILE * stream= fopen(room_file, "r");
if (stream==NULL){
return NULL;
}
while(!feof(stream)){
fscanf(stream, "%s %d %d",building,&roomNumber,&size);
if(fgets(multimedia, WORD_LEN, stream)==NULL){
break;
}
if(strcmp(multimedia, "N")==0){
mm=false;
}
else{
mm=true;
}
Room newRoom=roomCreate(building, roomNumber, size, mm);
Node newNode=createNode(newRoom);
addToRoomsList(sysList, newNode);
}
在这里,我尝试创建具有building,roomNumber,size,mm字段的房间,并且在newRoom-> building,...,newRoom-> mm的while循环值的第二次迭代中,由scanf更改
Room roomCreate (char *building_name, int number, int size, bool mm)
{
assert(building_name!=NULL);
if (size<=0 || size>=1000 || number<=0 || number>=10000){
return NULL;
}
Room newRoom= malloc(sizeof(*newRoom));
newRoom->building_name=building_name;
newRoom->multi_media=mm;
newRoom->size=size;
newRoom->number=number;
newRoom->orders=NULL;
return newRoom;
}
-创建空间的功能,但我想问题不在这里,只是其他详细信息