c语言编程技巧96888

c语言编程技巧96888

ID:34566788

大小:234.27 KB

页数:19页

时间:2019-03-08

c语言编程技巧96888_第1页
c语言编程技巧96888_第2页
c语言编程技巧96888_第3页
c语言编程技巧96888_第4页
c语言编程技巧96888_第5页
资源描述:

《c语言编程技巧96888》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C语言编程技巧英飞凌XC800系列单片机淘花/文库专用C语言编程技巧if语句对出错的处理¢先看一段代码:if(ch>=‘0’&&ch<=‘9’){……./*正常处理代码*/}else{/*输出错误信息*/printf("error......n");return(FALSE);}淘花/文库专用2009-1-21E1TrainingCopyright©InfineonTechnologies2008.Allrightsreserved.Page2C语言编程技巧if语句对出错的处理(续)¢上述程序段的结构不够理想。当“正常处理代码”很长的时候,最好不要用else。应该先判断错误,如

2、下所示:if(ch<'0'

3、

4、ch>'9'){/*输出错误信息*/printf(“error......n”);return(FALSE);}/*正常处理代码*/......¢这样不仅突出了错误,提高程序的可读性,还提高了执行效率。淘花/文库专用2009-1-21E1TrainingCopyright©InfineonTechnologies2008.Allrightsreserved.Page3C语言编程技巧使用define关键字定义宏¢在编写程序过程中,灵活使用宏定义,可以提高编程效率。¢看下面的例子:§例1:#defineLEVEL5¬注意:宏名应该使用大写字母¬如果程序

5、中需要多次使用同一个阈值,可在程序头用一个宏定义来取代这个数值。当调试时,需要修改该阈值的时候,可在宏定义处修改即可,而不需要在程序中每一处去修改。淘花/文库专用2009-1-21E1TrainingCopyright©InfineonTechnologies2008.Allrightsreserved.Page4C语言编程技巧使用define关键字定义宏(续)§例2:#defineMAX(a,b)(a)>(b)?(a):(b)¬使用带参数的宏定义,来求取两个变量中的较大者,使得程序既直观又简洁。§例3:#defineRprint(i)printf(“Theresultis%d

6、”,i)¬用宏定义来替代printf()函数,在调试时,就不用在每一处都写上长长的printf(……)语句了。淘花/文库专用2009-1-21E1TrainingCopyright©InfineonTechnologies2008.Allrightsreserved.Page5C语言编程技巧使用static封装变量¢编程时,有时希望一个函数或一个变量只在当前文件中有效,可以使用static关键字来进行修饰。¢看下面的例子:voidprintResult(){intvar=0;staticints=0;var++;s++;printf(“var=%d,s=%d”,var,

7、s);}voidmain(void){printResult();printResult();}淘花/文库专用2009-1-21E1TrainingCopyright©InfineonTechnologies2008.Allrightsreserved.Page6C语言编程技巧使用static封装变量(续)§上面函数的执行结果:第一次输出var=1,s=1;第二次输出var=1,s=2。¬原因:程序中用static修饰了局部变量s,则在程序开始执行时,s在静态存储区被分配了空间,它的生存周期直到程序结束。因此当printResult()函数返回时,s变量所占的空间并没有被释放。

8、第二次调用时仍然使用了原来的存储空间,也就使得s的值变为2。§在上面的例子中,如果将“staticints=0”改成“ints=0”,那么两次输出的结果都是var=1,s=1。¬用static修饰的局部变量的一个好处是:它的作用域仅限于当前函数。在这个函数之外的任何地方,我们不可以对s变量进行访问,这样就避免了参数之间的互相影响。淘花/文库专用2009-1-21E1TrainingCopyright©InfineonTechnologies2008.Allrightsreserved.Page7C语言编程技巧使用extern声明变量¢在一个工程中,常常需要在不同的.c文件中使用

9、同一个变量,这时就需要使用extern关键字来声明变量。¢看下面的例子:/*filecode1.c*/intnum=100;……/*filecode2.c*/externintnum;intmain(void){printf(“%d”,num);return0;}淘花/文库专用2009-1-21E1TrainingCopyright©InfineonTechnologies2008.Allrightsreserved.Page8C语言编程技巧使用extern声明变量(续)§该工程中同时包

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。