完善了PrintState函数
This commit is contained in:
parent
312c49e4f0
commit
415d871524
56
src/bus_io.c
56
src/bus_io.c
|
@ -145,3 +145,59 @@ rail_node_t *ReadConfigFile()
|
|||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
char* PrintState()
|
||||
{
|
||||
|
||||
int count;
|
||||
rail_node_t *p=NULL;
|
||||
char target[20],clockwise[20],counterclockwise[20];
|
||||
for(count=0,p=rails;p!=NULL;p=p->next_node,count++)
|
||||
{
|
||||
target[count]='0';
|
||||
clockwise[count]='0';
|
||||
counterclockwise[count]='0';
|
||||
} //遍历轨道链表,将所有站点初始化为0,即:无任何请求;
|
||||
|
||||
bus_query_t *t=NULL;
|
||||
int i;
|
||||
for(t=queries;t!=NULL;t=t->next_node)
|
||||
{
|
||||
i=t->node->id-1;
|
||||
if(t->type==0)
|
||||
{
|
||||
clockwise[i]='1';
|
||||
}
|
||||
else if(t->time==1)
|
||||
{
|
||||
counterclockwise[i]='1';
|
||||
}
|
||||
else if(t->type==2)
|
||||
{
|
||||
target[i]='1';
|
||||
}
|
||||
} //遍历请求链表,将有请求的站点按照不同类型标记为1
|
||||
|
||||
char line1[100],line2[10],line3[10],line4[100],line5[10],line6[100],line7[100];
|
||||
|
||||
sprintf(line1,"TIME:%d\n",bus_time);
|
||||
sprintf(line2,"BUS:\n");
|
||||
sprintf(line3,"position:%d\n",GetBusPosition());
|
||||
sprintf(line4,"target:%s\n",target);
|
||||
sprintf(line5,"STATION:\n");
|
||||
sprintf(line6,"clockwise:%s\n",clockwise);
|
||||
sprintf(line7,"counterclockwise:%s\n",counterclockwise); //分别得到每一行的字符串
|
||||
|
||||
strcat(line1,line2);
|
||||
strcat(line1,line3);
|
||||
strcat(line1,line4);
|
||||
strcat(line1,line5);
|
||||
strcat(line1,line6);
|
||||
strcat(line1,line7); //将7行字符串合并在一起
|
||||
|
||||
return line1; //返回合并后的字符串
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user