C/C++ socket编程教程:1天玩转socket通信技术

您好,欢迎来到C语言中文网“socket编程”专题,您将同时学到Linux和Windows下的socket通信技术。

socket 是“套接字”的意思,是计算机之间进行通信的一种约定,也可以认为是一种技术。学习 socket,就是学习计算机之间如何通信,并能够用编程语言开发出实用的程序。

该教程使用的编程语言是 C/C++,读者至少应该具备C语言基础;如果没有,请猛击《C语言入门教程》和《C++教程》进行学习。

提示:本教程并不要求读者有Linux和Windows开发的经验,也不需要深入了解 TCP/IP 协议,涉及到相关知识时我们都进行了说明。 

同时学习Linux和Windows的原因

大多数项目是在Linux下开发服务器端,而在Windows下开发客户端,需要经常在两大平台之间进行切换,单独学习一种平台没有实践意义。

值得欣慰的是,两大平台下的 socket 编程非常相似,并不会增加多少学习成本。

网络编程就是编写程序使两台联网的计算机相互交换数据。这就是socket的全部内容了吗?是的!socket编程远比想象中的简单很多。

马上开始开始Socket编程>>
socket是什么意思
一个简单的Linux下的socket程序
一个简单的Windows下的socket程序
WSAStartup()函数以及DLL的加载
使用socket()函数创建套接字
使用bind()和connect()函数
使用listen()和accept()函数
socket数据的接收和发送
回声客户端的实现
实现迭代服务器端和客户端
socket缓冲区以及阻塞模式
TCP的粘包问题以及数据的无边界性
TCP数据报结构以及三次握手(图解)
TCP数据的传输过程
TCP四次握手断开连接(图解)
优雅的断开连接--shutdown()
socket文件传输功能的实现
socket网络字节序以及大端序小端序
在socket中使用域名
理解UDP套接字
基于UDP的服务器端和客户端