#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<unistd.h>
#include<fcntl.h>
#include<sys/socket.h>
#include<sys/types.h>
#include<sys/wait.h>
#include<netinet/in.h>
int main()
{
int sockfd;
int connfd;
int status;
struct sockaddr_in server;
struct sockaddr_in client;
if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
perror("socket error");
exit(1);
}
bzero(&server,sizeof(server));
server.sin_family=AF_INET;
server.sin_port=htons(1234);
server.sin_addr.s_addr=INADDR_ANY;
if(bind(sockfd,(struct sockaddr*)&server,sizeof(server))==-1)
{
perror("bind error");
exit(1);
}
if(listen(sockfd,5)==-1)
{
perror("listen error");
exit(1);
}
socklen_t addrlen=sizeof(client);
while(1)
{
connfd=accept(sockfd,(struct sockaddr*)&client,&addrlen);
int pid;
pid=fork();
if(pid<0)
{
perror("error");
exit(1);
}
else if(pid>0)
{
close(connfd);
continue;
}
else
{
int result=0;
while(1)
{
char ent[100];
recv(connfd,&ent,sizeof(ent),0);
printf("%s\n",ent);
//------------------------------------------------//
if(strcmp(ent,"bye")==0)
break;
int i;
int n=0;
int len=strlen(ent);ent[len]='\0';
for(i=0;i<=len;i++)
{
if( ent[i]>='0' && ent[i]<='9' )
{
n=n*10+ent[i]-48;
}
else
{
if(n!=0||ent[i]=='\0')
{
result+=n;
printf("result--->%d\n",result);
}
n=0;
}
}
//-----------------------------------------------//
}
printf("result : %d \n",result);
write(connfd,&result,sizeof(result));
break;
}
}
close(connfd);
//close(sockfd);
}
王小北爱搬砖
- 粉丝: 34
- 资源: 28
最新资源
- 白色简洁风格的餐饮外卖预订企业网站源码下载.zip
- 白色简洁风格的产品营销型企业网站模板.zip
- 白色简洁风格的潮流服装整站网站源码下载.zip
- 白色简洁风格的潮流女性服装商城网站源码下载.zip
- 白色简洁风格的城市房产交易整站网站源码下载.zip
- 同步ddddddddddddddddddddddddd
- 雷赛运动控制卡C#案例学习
- 【C#联合halcon实现绘制ROI功能】
- 适合大学生期末springboot+vue3快递项目,大学生期末天花板项目,全部最基本的技术
- “关怀无界”:社区老年人服务系统的数字化转型
- 工业自动化领域中FX5-CCL-MS模块的CC-Link网络配置与参数设置指南
- 基于stm32的电子时钟项目源码(高分项目)
- 给UE添加一种新的异步节点UK2Node-ConstructAsyncActionFromClass
- MATLAB中Modbus协议工控仿真与DDoS攻击模拟
- 给UE添加一种新的异步节点UK2Node-ConstructAsyncActionFromClass
- 数据分析-50-客户价值分析-用Python实现RFM模型
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈