学习笔记之C语言基础篇

 

高质量的C语言须具备以下几种特性:

1.健壮性。即程序充分考虑了可能出现的各种情况,必给予相应的对策,如将函数的返回值用于返回此函数处理的状态,而将形参作为隐性输出。

2.可读性。程序要实现的功能必须一目了然并附有适当的注释。当然好的代码是不依赖注释,就能清晰易懂的,如函数实现的功能尽可能的简单单一,函数名产用动名形式,如    get_char(),适当使用枚举和结构体,让程序的结构更加紧凑和清晰。如将各种状态用枚举定义,typedef enum{STANDARD,OVER,UNDER,} sta;如将物体的特性用结构体封装typedef struct{int name; int age; int sex; int length; int weigt;}somebody;

3.可移植性。因为同样的代码可能用于不同的平台,使用不同的编译器,如在32bit的平台,long是32bit,而在64 bit平台则为64bit.

   因此在写代码时,应考虑能够当换到不同的平台时,只需对代码进行少量的改动即可。如#if (SYTTEM == _32bit)  typedef unsigned long int DWORD; #elif (SYSTEM == _64bit)  typedef int DWORD;

  再用DWORD去定义你想定义的变量,这样,当平台变动时,只需改动这一行语句即可,从而做到一改都改。

4.高效性。事前估算方法度量效率,可计算其时间复杂度O(?)及空间复杂度,设计算法时,可先建出数学模型,找出最简单的算法即执行时间短,占用空间少。

5.可复用性。即尽量减少功能有重叠或者有交叉的函数,与可读性中提到的函数功能尽可能单一有异曲同工之妙。如根据一个人的BMI值看此人的胖瘦.

    sta get_sta(somebody  you)

 {

 float bmi;

 bmi = (float)you.weigt / (float) (you.length*you.length);

 if (bmi >= 18.5 && bmi <= 22) return STANDARD;

 else if (bmi <18.5) return UNDER;

 else return OVER;

}

如果我们只是想获得you的BMI值的话,就要重新编写一个函数

float get_BMI(somebody you)

{

return ((float)you.weigt / (float) (you.length*you.length));

}

那get_sta和get_BMI就会有部分交叉,因此正确的作法应该是:

sta get_sta(somebody you)

{

float bmi;

bmi = get_BMI(you);

/*下面的照写*/

........

 

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值