/**** server ****/
#include <stdio.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include <pthread.h>
#include <sys/wait.h>
#include <netinet/in.h>
#include <sys/socket.h>
#define SERVPORT 6666
#define BACKLOG 20
#define MAXSIZE 1024
/**************************************************
服务器创建一个线程函数,当服务器端输入一个字符串
"cls"时,服务器将关闭。
**************************************************/
void *cls_pthread(void)
{
char s[] = "cls";
char str[MAXSIZE] = "\0";
while(1)
{
scanf("%s",str);
if ((strncmp(str,s,3) == 0) && (strlen(str) == strlen(s)))
break;
else
bzero(str,MAXSIZE);
}
exit(1);
}
/***************************************************
服务器创建线程函数,发送给客户端一个字符串,并且实
现将客户端发来的字符串转换成大写后再发给客户端,当
客户端发来"cls"的字符串时,客服端的线程关闭的功能
***************************************************/
void *my_pthread(int *pt)
{
int fd = *pt,n = fd-3;
int i = 0, retval = 0;
char msg[] = "Hello,you have connected!";
char buf[MAXSIZE];
bzero(buf,MAXSIZE);
/* 服务器向客户端发送信息,提示客服端已连接上服务器 */
if(send(fd,msg,sizeof(msg),0) == -1)
{
perror("Send Failed");
close(fd);
exit(1);
}
while(1)
{
/* 服务器接收客户端发送的信息 */
retval = recv(fd,buf,MAXSIZE,0);
if (retval == -1)