48-函数设计原则

注:博客中内容主要来自《狄泰软件学院》,博客仅当私人笔记使用。

测试环境:Ubuntu 10.10

GCC版本:4.4.5

 

一、函数设计原则

1)函数从意义上应该是一个独立的功能模块

2)函数名要在一定程度上反映函数的功能

3)函数参数名要能够体现参数的意义

4)尽量避免在函数中使用全局变量               

void sc(char *s1,char *s2);

void str_copy(char *str_dest,char *str_src); 

5)当函数参数不应该在函数体内部被修改时,应加上const声明

6)如果参数是指针,且仅作输入参数,则应加上const声明

void str_copy(char *str_dest, const char *str_src);

7)不能省略返回值的类型

    -    如果函数没有返回值,那么应声明为void类型

8)对参数进行有效性检查

    -    对于指针参数的检查尤为重要

9)不要返回指向“栈内存”的指针

    -    栈内存在函数体结束时被自动释放

10)函数体的规模要小,尽量控制在80行代码之内(不一定80行,原则是尽量短小精悍

11)相同的输入对应相同的输出,避免函数带有“记忆”功能

12)避免函数有过多的参数,参数个数尽量控制在4个以内

13)有时候函数不需要返回值,但为了增加灵活性,如支持链式表达,可以附加返回值                

char s[64];

int len = strlen(strcpy(s,"android"));

14)函数名与返回值类型在语义上不可冲突               

char c = getchar();

if(EOF == c)
{
     //...
}

课程总结:

1)C语言的学习需要勤思考勤动手才能得到提高

2)难点部分为指针的学习

    -    指针的本质,指针的运算,指针和数组

3)学习过程可以采用各个击破的方法

    -    在一个特定的时间段只重点学习和练习某个主题

4)在熟练掌握C语言的各个特性后再进行项目练习

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值