1、编程模型函数化
1)发送数据
Sendto:发送数据
ssize_t sendto(int sockfd,const void *buf,size_t nbytes,int flags,const struct sockaddr *destaddr,socklen_t destlen);
头文件:sys/socket.h
参数:sockfd:套接字,buf:发送的数据的地址。Nbytes:要发送的数据量,flags:发送的标识符
Destaddr:目的的地址,destlen:地址的长度。
返回实际的发送数据量
2)接收数据
Recvfrom:
ssize_t recvfrom(int sockfd,void *restrict buf,size_t len,int flags,struct sockaddr *restrict addr,socklen_t *restrict addrlen);
头文件:sys/socket.h
参数:sockfd:套接字,buf:存储数据的位置。Len:期望接收数据的长度,flags:接收的标识符
addr:发送方的地址会被填充进来,addrlen:地址长度的指针。
udp_server.c
udp_client.c