Boost库入门
运行环境:
gcc version 9.3.0
首先对于一个简单的服务器和客户端之间基于TCP协议的socket网络编程,我们首先就是要了解到客户端与服务器之间建立连接的三次握手,以及断开连接的四次挥手。
我们先从一个简单的C语言实现的客户端与服务器之间的代码来看。
先看服务器的代码:
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
int main(int argc, char** argv){
char hello[] = "hello world";
struct sockaddr_in sa;
int socketFD = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
if( -1 == socketFD){
perror("cannot create socket");
exit(EXIT_FAILURE);
}
memset(&sa, 0, sizeof sa);
sa.sin_family = AF_INET;
sa.sin_port = htons(2222);
sa.sin_addr.s_addr = htonl(INADDR_ANY);
if( -1 == bind(socketFD, (struct sockaddr*)&sa, sizeof sa)){
perror("bind failed");
close(socketFD);
exit(EXIT_FAILURE);
}
if( -1 == listen(