文章分类 - 程序员的自我修养
摘要:makefile Makefile的宗旨就是:让编译器知道要编译一个文件需要依赖其他的哪些文件。当那些依赖文件有了改变,编译器会自动的发现最终的生成文件已经过时,而重新编译相应的模块。 手工写makefile的风险 自己写的Makefile经常和自己的开发环境相关联,当系统环境变量或路径发生了变化后
阅读全文
摘要:语法 $() 取值 可以用于执行命令 - 有风险 if =判断字符串相等 eq判断数值相等 for 技巧 eval 执行命令 call Call命令在批处理中作用很大,它可以在一个批处理程序(父批处理程序)中调用另一个或多个批处理程序(子批处理程序),且不终止父批处理程序。 find 参考资料 ht
阅读全文
摘要:1、简介 土办法 以源码方式来安装软件: Tar包。 带有环境的包 由程序开发者直接在已知的系统上面编译好,再将该程序直接给使用者来安装。 像数据库一样管理包 如果在安装的时候还可以加上一些与这些程序相关的资讯,将他创建成为数据库,那不就可以进行安装、反安装、 升级与验证等等的相关功能 Linux
阅读全文
摘要:代码变成可执行文件,叫做编译(compile);先编译这个,还是先编译那个(即编译的安排),叫做构建(build)。 Make是最常用的构建工具,主要用于C语言的项目。但是实际上 ,任何只要某个文件有变化,就要重新构建的项目,都可以用Make构建。 一、Make的概念 Make这个词,英语的意思是”
阅读全文
摘要:浮点运算 四舍五入错误: http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
阅读全文
摘要:一般模式 列操作 删除列 1.光标定位到要操作的地方。 2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。 3.d 删除。 插入列 插入操作的话知识稍有区别。例如我们在每一行前都插入"() ": 1.光标定位到要操作的地方。 2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
阅读全文
摘要:简介 protobuf是一种先进的用于通信协议、数据存储的数据序列化方法。 比xml性能好很多,用起来也不复杂,类似json。但是由于二进制存储,数据无法直接可读, 不能自描述,需要通过引入mesage+proto文件来描述。所以他不能像xml,json那样用于配置文件。 语法 repeated o
阅读全文
摘要:awk 多文件与数组 awk -F '\t' '{arr[$0]++} END{ for (key in arr) print key,arr[key]}' file1 file2 查每一行是否在文件中 awk -F"&|=" 'BEGIN{while(getline < "./test_cust"
阅读全文
摘要:bash 中断 ctrl-c 是发送 SIGINT 信号,终止一个进程 ctrl-z 是发送 SIGSTOP信号,挂起一个进程 ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF 光标移动 中断 ctrl-c 是发送 SIGINT 信号,终止一个进程 ctrl-z 是发送 SIGS
阅读全文
摘要:前言 从代码到运行需要经历:编译、链接、装载、运行几大步骤。从编译后的.o文件到运行时的二进制文件很像,都接近于机器语言。他们在内存里可称为image。 链接:符号(如函数签名)和地址做一些调整 编译 include需要直接依赖的文件和间接依赖 链接 链接:组装相互引用的模块。 方式是:调整地址 具
阅读全文

浙公网安备 33010602011771号