Linux高性能服务器编程
潇湘夜雨~
不积跬步,无以至千里
展开
-
C++简单服务器实现
目录一、思路二、基本TCP套接字编程2.1socket函数2.2 bind函数2.3 socket地址结构2.4 listen函数2.5 accept 函数三、代码实现四、效果展示看完一阶段视频,总结一下,写一个C/S模型的服务器与客户端,实现客户端输入一串小写字符,服务端将每个字符转换为大写并回送给客户端。一、思路此服务器客户端采用的是TCP协议,...原创 2020-02-01 22:38:41 · 7923 阅读 · 5 评论 -
出错处理封装函数
上篇博客中的例子不仅功能简单,而且简单到几乎没有什么错误处理,我们知道,系统调用不能保证每次都成功,必须进行出错处理,这样一方面可以保证程序逻辑正常,另一方面可以迅速得到故障信息。为使错误处理的代码不影响主程序的可读性,我们把与socket相关的一些系统函数加上错误处理代码包装成新的函数,做成一个模块wrap.c:wrap.c:#include <stdlib.h>#i...原创 2020-02-05 12:40:20 · 297 阅读 · 0 评论 -
C++ read函数与write函数
read和write函数为Linux系统函数,都需要包含头文件:<unistd.h>read函数read系统函数从打开的设备或文件中读取数据,即将数据从外设上经过内核读到用户空间,函数原型如下:#include <unistd.h>ssize_t read(int fd, void *buf, size_t count); 从 fd 中读取数...原创 2020-02-03 22:18:05 · 8390 阅读 · 0 评论 -
C++ 传入传出参数 详解
一、基本概念C++ 中的参数,既可以当做传入参数,也可以当做传出参数,具体要看参数的数据类型。非指针,非引用类型:一定是当做传入参数; 指针,引用类型:既可以当做传入参数;也可以当做传出参数;甚至可以同时是传入参数,也是传出参数。其次要看对参数进行的操作:如果是只有读取,没有修改的,那就是传入参数,这时可以加上 const 限定符,以防不小心修改了参数。 如果只有对参数进行写入,...原创 2020-02-03 17:53:53 · 5556 阅读 · 0 评论 -
大小端问题(解释及判断方法)
目录一、为什么会有大小端模式之分呢?二、什么是大端和小端?三、数组在大端小端情况下的存储四、如何判断大小端呢?一、为什么会有大小端模式之分呢?因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但是在C语言中除了8bit的char之外,还有16bit的short型,32bit的int型。另外,对于位数大于8位的处理器,例如16位...原创 2020-01-29 22:35:30 · 3942 阅读 · 0 评论