1. 没C++那么恶心的const C语言中的const修饰符用于修饰一个变量是const属性的。被C语言的const修饰的变量具有只读属性,并且不能被修改。 const修饰的变量 != 常量,const修饰的变量虽然不能别修改,但是和常量还是有本质的区别的。 在定义const类型 ...
想要深入地理解语言的运行机理,阅读汇编代码是很有帮助的。 前奏:我们这里用的汇编代码格式是AT T的,这个微软的intel格式不一样。 AT T格式是GCC,OBJDUMP等一些其他我们在linux环境下常用工具的默认格式。 今天就一起再来看看switch语句吧。 关键词:跳转,跳转表 先来一个最简单的例子: 看一下其汇编代码:我会逐条注释。 命令是gcc O S test .c 好了,对着注释看 ...
2013-04-19 22:25 6 1204 推荐指数:
1. 没C++那么恶心的const C语言中的const修饰符用于修饰一个变量是const属性的。被C语言的const修饰的变量具有只读属性,并且不能被修改。 const修饰的变量 != 常量,const修饰的变量虽然不能别修改,但是和常量还是有本质的区别的。 在定义const类型 ...
今天偶然间看到这个头文件inttypes,好奇有什么用,去找度娘玩了一波,发现这头文件挺有意思的。 这个头文件适配于C99标准,它提供整数输入的各种进制转换的宏,这是在Ubuntu上扣下来的代码(windows里我没找到放在哪)嗯~ o(* ̄▽ ̄*)o我拿VScode找到了……所以划掉 ...
前言 这是一篇对 transfer 方法的拾遗,关于之前那篇文章的一些一笔带过,或者当时不知道的地方进行回顾。 疑点 1. 为什么将链表拆成两份的时候,0 在低位,1 在高位? 回顾一下 transfer 的相关代码: 关键看上面注释的代码,如果 runBit 是 0,那么就设置在低位 ...
惭愧,上一篇blog发表时间是12年8月份,现在已经13年2月份了。唉... 此处省略1w字。 半年有余,blog一直闲置了。但是闲置并不代表忘记。时不时还是会敲开cnblogs的域名胡乱逛逛。马上 ...
在前文已经介绍过了gevent的调度流程,本文介绍gevent一些重要的模块,包括Timeout,Event\AsynResult, Semphore, socket patch,这些模块都涉及当前协程与hub的切换。本文分析的gevent版本为1.2 Timeout ...
闭包拾遗 之前写了篇《闭包初窥》,谈了一些我对闭包的浅显认识,在前文基础上,补充并且更新些对于闭包的认识。 还是之前的那个经典的例子,来补充些经典的解释。 这里并没有在outerFn内部修改全局变量,而是从outerFn中返回了一个对innerFn的引用。通过调用 ...
正常的Select 语句如下: 也可以比较数值范围,确定数值范围的两个值用关键字To连接。如果Select表达式在这个范围中,则执行該Case语句。 如果需要相等以外的比较方式,则可以在Case关键字之后使用Is关键字,然后加上比较运算符和表达式,这样就会按指定的方式进行比较 ...
原创:打码日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 一般来说,想检查磁盘I/O情况,可以使用iostat、iotop、sar等,但这些命令只能做一个整体 ...