C语言
翼曦
这个作者很懒,什么都没留下…
展开
-
c语言 知识点
递归方法:递归相比循环时间上快些,但是 递归比较占用空间,(如果递归的次数超过十万次后会导致资源占用完毕)。标准的代码优化技巧:消除循环、函数循环、函数代码就地扩展、公共子表达式消除、改进寄存器分配、省略运行时对数组边界的检查、循环不变量代码移动、操作符长度消减(把指数操作符转变为乘法操作、把乘法操作变为移位操作或者加法操作)。总线错误: 由于未对齐的读或者写引起的 ...原创 2019-02-14 14:17:41 · 78 阅读 · 0 评论 -
va_start和va_end使用详解
转载于:http://www.cnblogs.com/hanyonglu/archive/2011/05/07/2039916.html本文主要介绍va_start和va_end的使用及原理。 在以前的一篇帖子Format MessageBox 详解中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解。 介绍这两个宏之前先看一下C中传递函数的参数时的用...转载 2019-07-23 17:30:36 · 83 阅读 · 0 评论 -
Linux Inotify详解和使用
本文部分摘自 https://blog.csdn.net/longwang155069/article/details/54016789适用场景:Inotify 反应灵敏,用法非常简单,并且比 cron 任务的繁忙轮询高效得多日志采集系统中,日志文件的改动。文件系统中文件或者目录是否变动。监控ftp服务器收到的文件,(这种情况可以监控mask的写关闭事件IN_CLOSE_WR...转载 2019-07-29 14:28:48 · 8899 阅读 · 0 评论 -
gdb调试常用(一)
-g 使用该参数编译可执行文件,得到调试表gdb a.outlist 1 列出源码,根据源码指定行号设置断点b: b 20 在20行设置断点run/r: 运行程序n/next: 执行下一条指令(会越过函数)s/step: 执行下一条执行(会进入函数)p/print: p i 查看变量的值c/continue: 继续执行断点后续命令。quit: 退...原创 2019-08-02 16:10:15 · 134 阅读 · 0 评论 -
makfile 学习(一)
makefile命名: makefile Makefile1个规则 目标:依赖条件 (一个tab缩进)命令 1、目标的时间必须晚于依赖条件的时间,否则,更新目录 2、依赖条件如果不存在,找寻新的规则去产生依赖 ALL :指定makefile 的终极目标2个函数src = $(wildcard *.c)找到当前...原创 2019-08-02 17:23:16 · 180 阅读 · 0 评论 -
常见开源产品epoll网络事件模型分析(附200万QPS实现长连接echo server方案)
转载:https://blog.csdn.net/answer3y/article/details/48276687摘要:redis、thrift-noblocking-server、memcached、nginx等开源产品 四种不同场景下不同网络模型 分析最近利用业余时间对基于epoll的网络服务模型做了一些调研和测试,既是复习也是一次再学习。在调研过程中,结合现有的开源产品的方案...转载 2019-08-02 11:03:39 · 489 阅读 · 0 评论 -
gdb 调试(二) 分析code文件
借鉴学习https://blog.csdn.net/hanchaoman/article/details/5583457 博文当遇到段错误的情况方法1 :短小代码中单步调试我们用gdb的step, 一步一步寻找.这放在短小的代码中是可行的, 但要让你step一个上万行的代码, 我想你会从此厌恶程序员这个名字, 而把他叫做调试员.我们还有更好的办法, 这就是core file....转载 2019-08-20 15:32:07 · 672 阅读 · 0 评论 -
指针(三) 指针数组
指针数组定义一维指针数组的定义形式 类型名 *数组名[数组长度]; char *p[5];一个数组,若其元素均为指针类型数据,称为指针数组,指针数组中的每一个元素都相当于一个指针变量。指针数组的初始化使用地址为指针数组初始化char*p[5]={“wangxiao”,”zhangyi”,”wenhua”,”chenxu”,”liming”};指针数组...原创 2019-09-05 13:52:11 · 457 阅读 · 0 评论