C语言
没有你的夜001
这个作者很懒,什么都没留下…
展开
-
vim+cscope+ctags打造属于自己的IDE
所谓工欲善其事,必先利其器。作为专业码农,特别是长期在Unix系统上展开工作(查看源代码、coding)的码农,没有一个极致的IDE环境,工作效率会很受影响的。当然啥时候Unix系统如果有Visual Studio这样牛X的IDE,相信很多人会很开心。但生活是残酷的,我们总得自己丰衣足食,下面介绍一下,我在Ubuntu上使用vim+cscope+ctags搭建的IDE。 介绍之前,先上个效果转载 2017-12-22 12:00:14 · 17023 阅读 · 1 评论 -
va_list深究
2011-04-21 21:06:11| 分类: C/C++|字号 订阅 VA函数(variable argument function),参数个数可变函数,又称可变参数函数。C/C++编程中,系统提供给编程人员的va函数很少。*printf()/*scanf()系列函数,用于输入输出时格式化字符串;exec*()系列函数,用于在程序中执行外部文件(main(i转载 2016-12-09 14:06:18 · 4351 阅读 · 0 评论 -
TCP 和 UDP 在socket编程中的区别
(网络收集) 一、TCP与UDP的区别 基于连接与无连接 对系统资源的要求(TCP较多,UDP少) UDP程序结构较简单 流模式与数据报模式 TCP保证数据正确性,UDP可能丢包 TCP保证数据顺序,UDP不保证 部分满足以下几点要求时,应该采用UDP 面向数据报方式 网络数据大多为短消息 拥有大量Client 对数据转载 2016-10-20 16:56:15 · 301 阅读 · 0 评论 -
进程和线程管理
5.1.1 进程概念 20世纪60年代,进程(process)一词首先在麻省理工学院的MULTICS和IBM的CTSS/360系统中被引入。 对进程下个准确定义不容易,一般的我们认为进程是一个程序的一次执行过程。进程是申请系统资源的基本的单位,它具有的两个重要特性。 1. 独立性 进程是系统中独立存在的实体,它可以拥有自己独立的资源,比如文件和设备描述符转载 2016-10-20 15:21:57 · 804 阅读 · 0 评论 -
C语言register关键字—最快的关键字
register:这个关键字请求编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻址访问,以提高效率。注意是尽可能,不是绝对。你想想,一个CPU 的寄存器也就那么几个或几十个,你要是定义了很多很多register 变量,它累死也可能不能全部把这些变量放入寄存器吧,轮也可能轮不到你。 一、皇帝身边的小太监----寄存器 不知道什么是寄存器?那见过太监没有?没有?转载 2016-10-20 15:13:18 · 1439 阅读 · 0 评论 -
#pragma
在网络协议编程中,经常会处理不同协议的数据报文。一种方法是通过指针偏移的方法来得到各种信息,但这样做不仅编程复杂,而且一旦协议有变化,程序修改起来也比较麻烦。在了解了编译器对结构空间的分配原则之后,我们完全可以利用这一特性定义自己的协议结构,通过访问结构的成员来获取各种信息。这样做,不仅简化了编程,而且即使协议发生变化,我们也只需修改协议结构的定义即可,其它程序无需修改,省时省力。下面以TCP协议转载 2016-10-17 16:46:22 · 387 阅读 · 0 评论 -
printf打印是字体和背景带颜色的输出的方法
格式如下: printf("\033[字背景颜色;字体颜色m 字符串 \033[0m" ); 例子: printf("\033[1m\033[45;33m HELLO_WORLD \033[0m\n"); 颜色代码: QUOTE: 字背景颜色范围: 40--49 字颜色: 30—39转载 2018-01-10 14:23:42 · 1018 阅读 · 0 评论