网络编程
来源:互联网 发布:office软件卸载不了 编辑:程序博客网 时间:2024/05/17 23:08
出处:http://blog.csdn.net/hyman_c/article/details/50616360
socket服务器端编程的基本步骤:
1.1 创建套接字
int socket(int domain,int type,int protocol);domain--协议族,常用的有AF_INET(基于IPv4的Internet协议),AF_INET6(基于IPv6的Internet协议),AF_LOCAL(Unix本地通信协议)
type--传输类型,常用的有SOCK_STREAM(面向连接的可靠的带连接的传输方式,如TCP)、SOCK_DGRAM(面向消息的不可靠的无连接的传输方式,如UDP)
protocol--指定协议,在前面两个参数确定的情况下,若存在多种协议满足条件,用来指定某个协议,通常为0
返回值--socket文件操作符
1.2 绑定地址信息
int bind(int sockfd,const struct sockaddr* addr,socklen_t* addrlen);sockfd--服务器的socket操作符
addr--储存地址信息的结构体
addrlen--储存地址信息的结构体的长度
返回值--成功返回0,失败返回-1
1.3 开启监听
int listen(int sockfd,int backlog);sockfd--服务器端的socket操作符
backlog--可保持的最大连接数
返回值--成功返回0,失败返回-1
1.4 接收连接
该函数为阻塞函数,直到接收到客户端的链接后退出阻塞状态int accept(int sockfd,struct sockaddr* addr,socklen_t* addrlen);
sockfd--服务器的socket操作符
addr--用来保存客户端地址信息的结构体
addrlen--客户端地址信息结构体的长度
1.5 向客户端socket写数据
ssize_t write(int fd,void* buf,size_t count);fd--客户端的socket操作符
buf--要写入的字符序列
count--写入的序列的长度
返回值--返回实际写入的长度
1.6 关闭套接字
close(int sockfd)sockfd--socket标识符
示例代码serv.c:
阅读全文
0 0
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 网络编程
- 扩展SQLite使其能从apk文件中读取db
- 学生管理系统·
- Hadoop基础教程-第11章 Hive:SQL on Hadoop(11.7 HQL:数据查询)(草稿)
- 替换空格
- Rsync远程数据同步工具
- 网络编程
- 朴素贝叶斯:分母相对于所有类别为常数
- 网站开发(三)网站前台的导入及控制器对应
- 进程间通讯--动态库的共享数据
- gopher meetup
- Centos 添加yum源
- 2017目标跟踪算法综述
- Centos6.5源码安装MySQL
- [笔记分享] [Camera] MTK Camera module