md5_final 产生的结果与 openssl md5不一样。MD5_CTX c1;// MD5 for generating 
 bzero(&c1,sizeof(MD5_CTX));
 unsigned char * md5code1 = (unsigned char*)malloc(sizeof(unsigned char)*32);// the md5 code
 MD5_Init(&c1);
 if(dataLength>0){
     //there are return data from server.
 for(i = 0; i<dataLength;i++){
 if(read(sock,&resData[i],1)==1){
 }else break;
 }
 if(i<dataLength){
     perror("socket:read");
 printf("Something wrong when reading\n");
 exit(0);
 }
 MD5_Update(&c1,resData,dataLength);
 MD5_Final(md5code1,&c1);
 }
小女在此谢过各位 真的很急,拜托了