C++语言
文章平均质量分 58
zxgmlcj
这个作者很懒,什么都没留下…
展开
-
IP网际协议格式
IP协议属于网络层协议,不可靠,无连接网络层协议功能:1.路由与寻址:IP协议头部带有源IP和目的IP2.数据组包和分包:有字段表示是否分包,且有标识字段指示唯一数据包IP网际协议与实际数据各字段详解:1)4位版本号:0100 值4,IPV42)4位首部长度:数值单位4字节,value*4个字节数。0101 值5,5*4 = 20字节。注:IP头部最大长度60字节3)8位服务类型:3位优先权字段(已经弃用);4位TOS字段:最小延时,最大吞吐量,最高可靠性,最小成本(这四者原创 2020-11-15 16:22:14 · 231 阅读 · 0 评论 -
GDB调试知识总结
GDB(GNU Debugger)是类 Unix(如 Linux)操作系统下的一款开源的 C/C++ 程序调试器。对于大多数由内存访问冲突导致的程序崩溃,我们都可以使用 GDB 分析产生的core 文件来定位问题原因;另外对于一些出现几率比较低,比如一万次操作可能只会出现一个,我们可以在不修改程序代码的前提下,使用 GDB 条件断点的功能设置触发条件,最终定位和解决问题。Linux 下 C++ 程序开发,即使使用 makefile、cmake 等编译工具,其最终都是调用 gcc 这一编译工具组的。.原创 2020-08-12 22:53:51 · 790 阅读 · 0 评论 -
匿名管道介绍
匿名管道是进程间通信(IPC)的一种方式。基本思想是利用内存中共享的一段缓冲区,以文件的方式对缓冲区实现,但因为该文件只存在内存中,无唯一命名,所以称为匿名。优点:可以进行IPC通信,且相对来说简单;缺点:半双工方式,即只能单向通信;只能在亲属关系的进程间使用,例如父子进程、兄弟进程。应用场景:在具备亲属关系的进程间单向通信。如果需要进行双向通信,需要创建两个管道。原理:首先父进程...原创 2019-09-24 10:35:13 · 396 阅读 · 0 评论 -
不使用标准库函数实现char *int2str(int value)
void int_2_str(int value){ char iStr[32] = {0}; int remain = 0, index = sizeof(iStr)-1; while (value) { remain = value % 10; value = value / 10; iStr[--index]...原创 2019-08-21 13:16:33 · 211 阅读 · 0 评论 -
Visual Studio+VisualGDB离线环境下搭建和简单实用(下)
本篇幅讲解使用Visual Studio+VisualGDB创建Linux工程、VisualGDB的配置以及简单编译和调试。1.创建Linux工程使用Visual Studio创建Linux工程一直next,直到如下界面,选中Use GNU Makenext,进入如下界面,选中1.Remote computer下拉选框,点击2.Create a new SSH connec...原创 2019-02-23 15:34:03 · 1674 阅读 · 0 评论 -
Visual Studio+VisualGDB离线环境下搭建和简单实用(上)
在Linux环境下开发应用或者进行代码跨平台移植,一般借助于Linux下的集成开发工具,例如:CodeBlocks等。对熟悉在Windows下使用Visual Studio开发应用程序的人员来说,如果未接触过Linux下的集成开发工具如:CodeBlocks等,会觉得不习惯,增加开发工具学习成本。可以使用Visual Studio+VisualGDB进行Linux程序的开发,即通过使用Wind...原创 2019-02-23 15:33:38 · 5619 阅读 · 0 评论 -
编译、装载和库那些事-《程序员的自我修养-链接、装载和库》总结(读后感)
如果你想了解程序如何编译、链接,动态库、静态库如何加载以及可执行文件生成过程,推荐俞甲子老师、石凡老师以及 潘爱民老师编著的《程序员的自我修养-链接、装载和库》。虽然相关知识并不能直观的提升编程技能,但是对于程序编译、运行过程中遇到的问题,能够更快、更深入的定位问题的原因。写这篇文章,一部分是为了和各位分享知识,一部分是为了网络上做备份。正文内容部分来自书籍,部分来自理解,可能有...原创 2018-08-07 20:47:11 · 1208 阅读 · 1 评论 -
WMI获取硬盘型号和对应逻辑分区
项目中遇到需要统计windows平台硬件资源的需求。采用WMI进行获取,但在获取硬盘型号以及对应的逻辑分区时被卡住了。 我们知道磁盘驱动器与硬盘是一对一的关系,而硬盘与逻辑磁盘是一对多关系。采用WMI中类Win32_DiskDrive能获取磁盘驱动器信息,Win32_LogicalDisk能获取具体逻辑磁盘信息(包括已使用大小,总大小等);而GetLogicalDr...原创 2018-07-31 16:24:04 · 4407 阅读 · 1 评论 -
大文件切割工具
大文件切割工具往往超大型的日志文件,打开会非常慢或者无法打开,导致无法查看日志信息,不方便调试的开展。下面介绍自己编写的大文件切割程序,程序比较简单,使用Qt,C和C++,能够处理2.1G以上的大文件,适合初学者阅读。下面贴代码:#include #include #include #include #include using namespace std;原创 2017-11-09 19:48:02 · 2726 阅读 · 0 评论