Exemple #1
0
void *thread(void*argv)
{
	//struct sockaddr_in tcin;
	int cfd = (int)argv;
	char buf[1024]={0};
	int ret;
	Node* k=NULL;
	Node m;
              struct package p;
              while(1)	   
	   {
	   	ret = read(cfd,buf,sizeof(buf));
	   if(ret <=0){
	   	close(cfd);
	   	printf("close cfd+%d\n",cfd);
	   	return argv;
	                }

	                load();

	               k   = search(buf);
	              if(k != NULL)
	                     { 
	                     	
	                       read(cfd,buf,sizeof(buf));
                                         if(strcmp(k->passowed,buf) == 0){
                                         	 //free(td.fhead);
                                         	k->fcd = cfd;
                                         	 m.fcd  = k->fcd;
                                         	strcpy( m.name , k->name);
                                         	 strcpy(m.passowed ,k->passowed);
                                         	write(cfd,"登录成功",12);

                                         	insert_b(m);

                                                   printf("---------------------\n");
                                         	 show(td.thead);
                                         	save(td.thead);
                                         	//free_list(td.fhead);
                                        	break;
                                         }else{
                                         	write(cfd,"登录失败",12);
                                         }
	                     }else{
	                     	 write(cfd,"no user",7);
	                     }
                //   show(td.fhead);
	}
	return argv;
}
Exemple #2
0
int main(int argc, const char *argv[])
{
    struct stu *op,*head;
    head = (struct stu *)malloc(sizeof(struct stu));
    head->id = 1;
    head->chinese = 97;
    strcpy(head->name,"zhang");
    op=creat(head,2,60,"shazi");
    op=creat(op,3,60,"bendan");
    op=creat(op,4,70,"danben");
    op=creat(op,5,80,"haha");
    op=creat(op,6,90,"haha1");
    op=creat(op,7,100,"huakai");
    //head = fr(head,1); 
    //insert_next(head,3,8,59,"ladeng");
    head = insert_b(head,20,9,58,"ladeng");
    bianli(head);
    return 0;
}
Exemple #3
0
int search_add(char *ch)
{
	node_a *temp=head;
	
	while(temp!=NULL)
	{
		if((temp->m[0]==*(ch+0))&&(temp->m[1]==*(ch+1)))
		{
			break;
		}
		temp=temp->down;
	}
	
	if(temp==NULL)
	{
		insert_a(ch);
		temp=p;
	}
	
	char st[2];
	st[0]=*(ch+2);
	st[1]=*(ch+3);
	insert_b(temp,st);
}