读《0 bug C/C++商用工程之道》——记录1
一、程序真谛
1.程序就是“搬数”
动作:读取——技术——写出(输入——处理——输出)
数据结构决定数据如何组织,搬动起来效率较高
算法语言决定了如何搬效率较高
2.程序就是“写文章”
双可读性:程序员阅读无障碍、计算机阅读无错误
3.程序就是“复制”
建立自己常用工程程序库,将常用算法和程序经过多年总结和归纳,使之具有高可用性和高正确性,在后期工作时可直接“复制”,缓解工作压力
二、定名
1.函数命名原则
1)首字母大写
2)函数名可很长,要表意清晰
3)无参数的函数在括号内使用void
2.变量命名原则
1)以小写的缩写前缀显示说明该变量的类型,如nCount,pBuffer
2)对于不同作用域的变量,如类成员变量和全局变量,必须以显式的m_和g_前缀区分
3)变量名表意要清晰
4)变量在函数使用过程中严禁转义
5)静态数组指针以sz为前缀,不需要后续程序释放
6)动态申请指针以p为前缀,需要后续程序释放
7)结构体内部成员变量用m_作前缀
8)匈牙利命名法常用的变量前缀
n int
c char
b bool
sz 静态数组
p 动态指针
us unsigned short
ui unsigned int
ul unsi
相关文档:
设置:
1. Tools/Projects and Solutions/VC ++ Directories
Inlcude files: C:\Program Files\MATLAB\R2009a\extern\include
Library files: C:\Program Files\MATLAB\R2009a\extern\lib
2. Property
Configuration Properties/Linker
......
网上搜索了一大堆去掉/*和*/之间注释的代码,就像<The C Programming Language>练习1-23里有人说的一样
大部分都会被以下的程序broken,这个功能看起来简单,实际上很有难度.网上实现的代码,除了我找到的一个用文件指针实现的没有问题外,其余的都存在各种bug,不信的话就用以下的程序测试一下:-),当然这个程序也不够完善 ......
1.求下面函数的返回值( 微软)
int func(x)
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
  ......
用过vista的朋友都知道 vista不知由于什么原因很多编译软件都不能正常工作了 vs6.0全部都说有已知的兼容性问题存在
当然你可以装好几个g的vs2005
寡人一直都想自学一门计算机语言
但是苦于找不到编译器
连最简单的hellowold都不能正常编译
汗
不多说
看我弄得
总算能用了
1.下载MinGW
http://sourceforge.net/pro ......