Linux下的TCP Socket简单例子
2017-06-10 12:02
411 查看
客户端代码 client.c
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main(int argc, char **argv)
{
int sockfd;
struct sockaddr_in servaddr;
sockfd = socket(PF_INET, SOCK_STREAM, 0);
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(50001);
servaddr.sin_addr.s_addr = inet_addr("127.0.0.1");
connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr));
char sendline[100];
sprintf(sendline, "Hello, world!");
write(sockfd, sendline, strlen(sendline));
close(sockfd);
return 1;
}
服务器端代码 server.c
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main(int argc, char **argv)
{
int listenfd;
int connfd;
struct sockaddr_in servaddr;
listenfd = socket(PF_INET, SOCK_STREAM, 0);
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
servaddr.sin_port = htons(50001);
bind(listenfd, (struct sockaddr *)&servaddr, sizeof(servaddr));
listen(listenfd, 10);
connfd = accept(listenfd, (struct sockaddr *)NULL, NULL);
int n;
char recvline[1024];
while((n=read(connfd, recvline, 1024)) > 0)
{
recvline
= 0;
printf("%s\n", recvline);
}
close(connfd);
close(listenfd);
return 1;
}
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main(int argc, char **argv)
{
int sockfd;
struct sockaddr_in servaddr;
sockfd = socket(PF_INET, SOCK_STREAM, 0);
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(50001);
servaddr.sin_addr.s_addr = inet_addr("127.0.0.1");
connect(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr));
char sendline[100];
sprintf(sendline, "Hello, world!");
write(sockfd, sendline, strlen(sendline));
close(sockfd);
return 1;
}
服务器端代码 server.c
#include <stdio.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main(int argc, char **argv)
{
int listenfd;
int connfd;
struct sockaddr_in servaddr;
listenfd = socket(PF_INET, SOCK_STREAM, 0);
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
servaddr.sin_port = htons(50001);
bind(listenfd, (struct sockaddr *)&servaddr, sizeof(servaddr));
listen(listenfd, 10);
connfd = accept(listenfd, (struct sockaddr *)NULL, NULL);
int n;
char recvline[1024];
while((n=read(connfd, recvline, 1024)) > 0)
{
recvline
= 0;
printf("%s\n", recvline);
}
close(connfd);
close(listenfd);
return 1;
}
相关文章推荐
- Linux下socket TCP的简单例子
- Linux下socket TCP的简单例子
- Linux下的TCP Socket简单例子
- Linux socket编程示例(最简单的TCP和UDP两个例子)
- Linux下的TCP Socket简单例子
- linux socket编程以及简单的tcp,udp的例子
- [Linux] 最简单的socket通讯例子
- linux下socket通信,server和client简单例子(三)
- C# Socket TCP简单例子(服务器与客户端通信)
- 一个简单的linux下原生socket的tcp程序及其修改
- 3个学习Socket编程的简单例子:TCP Server/Client, Select
- linux简单的TCP与UDP的socket程序以及机器大小端的判断程序
- linux下基于TCP简单的socket通信程序
- Linux下两个程序进行socket通信的简单例子
- Linux基础之tcp socket 简单通信例程
- windows下socket开发tcp程序 简单例子
- unix socket网络编程TCP简单例子
- 【socket编程】一个简单的基于TCP的客户/服务端例子(vs2008)
- linux下java程序与C语言程序通过SOCKET通信的简单例子
- Linux下两个程序进行socket通信的简单例子