c语言网络套接字讲解,C语言学习笔记-网络与套接字

所有程序都需要编写检查错误的代码

一.基础知识

客户端与服务器之间将展开一段结构化对话,叫协议。

在C语言中,如果写一个与网络通信的程序,就需要新的数据流-套接字,套接字是双向的,既可以输入也可以输出

1.使用socket()函数创建一个套接字数据流

#include

int xxxx = socket(PF_INET, SOCK_STREAM, 0);

xxxx是套接字名字

套接字与客户端程序通信,服务器需要经历,绑定端口,监听,接受连接,开始通信,四个阶段

服务启动时,服务器会为每项服务分配一个端口,服务器启动时,需要告诉操作系统将要使用哪个端口,这个过程叫做端口绑定。

2.这些代码将创建一个表示"互联网xxx端口"的套接字名

#include

struct sockeaddr_in xxxx;

xxxx.sin_family = PF_INET;

xxxx.sin+port = (in_port_t)htons(端口号);

xxxx.sin_addr.s_addr = htonl(INADDR_ANY);

int x = bind (套接字名字, (struct sockaddr * ) &xxxx, sizeof(name));

3.设置客户端连接服务器的排队数量

listen(套接字名字, xx)

xx为人数

在linux操作系统的/etc/services文件中可以查看常用服务使用的端口号

4.保存连接客户端的详细信息

<
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值