函数共685篇 第61页
函数是预先定义的功能块(由代码组成)。我们编写函数的目的通常是为了反复调用它(提高代码的复用性)。

网络数据传输时的大小端问题 什么是大端序和小端序

网络数据传输时的大小端问题 什么是大端序和小端序-华尔子博-奥夏网
不同 CPU 中,4 字节整数 1 在内存空间的存储方式是不同的。4 字节整数 1 可用 2 进制表示如下: 00000000 00000000 00000000 00000001 有些 CPU 以上面的顺序存储到内存,另外一些 CPU 则以倒...
子博网的头像-华尔子博-奥夏网子博网3年前
09512

socket编程实现文件传输功能详细教程

socket 文件传输程序,这是一个非常实用的例子。要实现的功能为:client 从 server 下载一个文件并保存到本地。 编写这个程序需要注意两个问题: 1) 文件大小不确定,有可能比缓冲区大很多,调...
天山雪莲的头像-华尔子博-奥夏网天山雪莲3年前
0690

shutdown()函数:优雅地断开TCP连接

shutdown()函数:优雅地断开TCP连接-华尔子博-奥夏网
调用 close()/closesocket() 函数意味着完全断开连接,即不能发送数据也不能接收数据,这种“生硬”的方式有时候会显得不太“优雅”。 上图演示了两台正在进行双向通信的主机。主机A发送完数据...
子博网的头像-华尔子博-奥夏网子博网3年前
0660

图解TCP四次握手断开连接过程详解

图解TCP四次握手断开连接过程详解-华尔子博-奥夏网
建立连接非常重要,它是数据正确传输的前提;断开连接同样重要,它让计算机释放不再使用的资源。如果连接不能正常断开,不仅会造成数据传输错误,还会导致套接字不能关闭,持续占用资源,如果并...
天山雪莲的头像-华尔子博-奥夏网天山雪莲3年前
01730

非常详细图解TCP数据报结构以及三次握手

非常详细图解TCP数据报结构以及三次握手-华尔子博-奥夏网
TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的通信协议,数据在传输前要建立连接,传输完毕后还要断开连接。 客户端在收发数据前要使用 connect(...
子博兄的头像-华尔子博-奥夏网4年前
01150

TCP协议的粘包问题(数据的无边界性)

socket缓冲区和数据的传递过程,可以看到数据的接收和发送是无关的,read()/recv() 函数不管数据发送了多少次,都会尽可能多的接收数据。也就是说,read()/recv() 和 write()/send() 的执行次数...
王麻子的头像-华尔子博-奥夏网王麻子4年前
0810

socket缓冲区以及阻塞模式详解

socket缓冲区以及阻塞模式详解-华尔子博-奥夏网
socket缓冲区 每个 socket 被创建后,都会分配两个缓冲区,输入缓冲区和输出缓冲区。 write()/send() 并不立即向网络中传输数据,而是先将数据写入缓冲区中,再由TCP协议将数据从缓冲区发送到目...
子博兄的头像-华尔子博-奥夏网子博兄4年前
01550

使用socket编程实现回声客户端

所谓“回声”,是指客户端向服务器发送一条数据,服务器再将数据原样返回给客户端,就像声音一样,遇到障碍物会被“反弹回来”。 对!客户端也可以使用 write() / send() 函数向服务器发送数据...
子博兄的头像-华尔子博-奥夏网4年前
01600

send()/recv()和write()/read():发送数据和接收数据

Linux下数据的接收和发送 Linux 不区分套接字文件和普通文件,使用 write() 可以向套接字中写入数据,使用 read() 可以从套接字中读取数据。 前面我们说过,两台计算机之间的通信相当于两个套接...
王麻子的头像-华尔子博-奥夏网王麻子4年前
01820

listen()和accept()函数:让套接字进入监听状态并响应客户端请求

对于服务器端程序,使用 bind() 绑定套接字后,还需要使用 listen() 函数让套接字进入被动监听状态,再调用 accept() 函数,就可以随时响应客户端的请求了。 listen() 函数 通过 listen() 函数...
子博兄的头像-华尔子博-奥夏网4年前
01930