2011年12月13日

进程地址空间

摘要: 作者:沧海猎人 出处:http://blog.csdn.net/embedded_hunter 转载请注明出处 嵌入式技术交流QQ群:179012822我们在学习C程序开发时经常会遇到一些概念:代码段、数据段、BSS段(Block Started by Symbol)、堆(heap)和栈(stack)。先看一张教材上的示意图(来源,《UNIX环境高级编程》一书),显示了进程地址空间中典型的存储区域分配情况。从图中可以看出:从低地址到高地址分别为:代码段、(初始化)数据段、(未初始化)数据段(BSS)、堆、栈、命令行参数和环境变量堆向高内存地址生长栈向低内存地址生长还经常看到下面这个图(来源,不 阅读全文

posted @ 2011-12-13 17:09 sprzhing 阅读(209) 评论(0) 推荐(0) 编辑

C陷阱与缺陷读书笔记

摘要: 1. 数组和指针只有在函数传参的时候是等价的,因为函数是无法传递数组的,所以在传递前将数组转换成为数组个元素的指针,其它情况下不同,比如extern int a[10];和extern int * a;是完全不同的。2.ANSIC标准中禁止对string literal作出修改(不能逐个字作修改)3.一个变量的声明:将变量去掉就变成了变量的类型,根据这一点可以判断是函数声明还是定义数据类型或是函数调用4.避免“栏杆错误”:one 首先考虑最简单情况下的特例,然后将结果外推 two 仔细计算边界,绝不掉以轻心5.C语言设计入界点0出界点n不在数组中,更好地计算个数,不对称美6.C语言优先级:四个 阅读全文

posted @ 2011-12-13 15:57 sprzhing 阅读(186) 评论(0) 推荐(0) 编辑

Vim剪切板

摘要: vim有12个粘贴板,分别是0、1、2、...、9、a、“、+;用:reg命令可以查看各个粘贴板里的内容。在vim中简单用y只是复制到“(双引号)粘贴板里,同样用p粘贴的也是这个粘贴板里的内容;要将vim的内容复制到某个粘贴板,需要退出编辑模式,进入正常模式后,选择要复制的内容,然后按"Ny完成复制,其中N为粘贴板号(注意是按一下双引号然后按粘贴板号最后按y),例如要把内容复制到粘贴板a,选中内容后按"ay就可以了,有两点需要说明一下:“号粘贴板(临时粘贴板)比较特殊,直接按y就复制到这个粘贴板中了,直接按p就粘贴这个粘贴板中的内容;+号粘贴板是系统粘贴板,用"+ 阅读全文

posted @ 2011-12-13 11:51 sprzhing 阅读(205) 评论(0) 推荐(0) 编辑

导航