TCP客服端实现
步骤:
- 创建套接字
- 连接服务器
- 收发数据
- 关闭套接字
#include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <sys/types.h>
#include <string.h>
#include <unistd.h>
int main()
{
int sockfd = socket(AF_INET,SOCK_STREAM,0);
if(sockfd > 0)
{
printf("套接字创建成功:%d\n",sockfd);
}
else
{
printf("套接字创建失败\n");
}
//定义TCP服务器的地址结构体
char * des_ip ="10.9.71.130";
struct sockaddr_in des_addr;
des_addr.sin_family = AF_INET;
des_addr.sin_port =htons(9000);
//ip转换为32位数据,小端转换为大端
inet_pton(AF_INET,des_ip,(void *)&des_addr.sin_addr);
//连接window上的服务器
int flag = connect(sockfd,(struct sockaddr *)&des_addr,sizeof(des_addr));
if(flag == 0)
{
printf("链接成功!\n");
}
else
{
printf("链接失败!\n");
}
ssize_t num,num2;
while(1)
{
//发送
//可以设置为从外界获取内容
num = send(sockfd,"zhenqi zhen shuai",strlen("zhenqi zhen shuai"),0);
printf("发送了%ld\n",num);
//接受
char buff[512]="";
num2 = recv(sockfd,buff,sizeof(buff),0);
printf("接收到了:%d字节,text:%s\n",num2,buff);
sleep(1);
}
return 0;
}