#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<unistd.h>
#include<pthread.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include <ctype.h>
#include<arpa/inet.h>
#define SERV_PORT 9527
int main(int argc, char const *argv[])
{
int cfd;
int count=10;
char buf[1024];
char buffer[1024];
struct sockaddr_in serv_addr;
serv_addr.sin_family=AF_INET;
serv_addr.sin_port=htons(SERV_PORT);
inet_pton(AF_INET, "127.0.0.1", &serv_addr.sin_addr);
//服务器的地址结构、
cfd=socket(AF_INET,SOCK_STREAM,0);
if (cfd == -1) {
perror("socket");
exit(1);
}
if (connect(cfd, (struct sockaddr*)&serv_addr, sizeof(serv_addr)) == -1) {
perror("connect");
exit(1);
}
int ret;
while(--count)
{
write(cfd,"hello",5);
ret=read(cfd,buf,sizeof(buf));
if (ret == -1) {
perror("read");
exit(1);}
write(STDOUT_FILENO,buf,ret);
sleep(1);
}
close(cfd);
return 0;
}
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<unistd.h>
#include<pthread.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include <ctype.h>
#include<arpa/inet.h>
#define SERV_PORT 9527
int main(int argc, char const *argv[])
{
int lfd=0;
int cfd=0;
char buf[BUFSIZ],clit_IP[1024];
int ret=0;
struct sockaddr_in serv_addr,clit_addr;
socklen_t clit_addr_len;
serv_addr.sin_family=AF_INET;
serv_addr.sin_port=htons(SERV_PORT);
serv_addr.sin_addr.s_addr=htonl(INADDR_ANY);
lfd=socket(AF_INET,SOCK_STREAM,0);
// inet_aton("192.168.196.129",&serv_addr.sin_addr);
bind(lfd,(struct sockaddr*)&serv_addr,sizeof(serv_addr));
listen(lfd,128);
clit_addr_len=sizeof(clit_addr);
cfd= accept(lfd,(struct sockaddr*)&clit_addr,&clit_addr_len );
printf("client ip:%s, port: %d\n",inet_ntop(AF_INET,&clit_addr.sin_addr.s_addr,clit_IP,sizeof(clit_IP)),ntohs(clit_addr.sin_port));
while(1)
{
ret=read(cfd,buf,sizeof(buf));
write(STDOUT_FILENO,buf,ret);
for(int i=0;i<ret;i++)
{
buf[i]=toupper(buf[i]);
}
write(cfd,buf,ret); sleep(1);
}
close(lfd);
close(cfd);
return 0;
}