版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qingwufeiyang12346/article/details/84574608
本系列文章希望探讨以硬件为平台讲述C(C++)知识的一个新的途径,改变目前大多数C语言教程仅注重C语言本身的语法规则,而脱离其应用环境的现状。希望读者通过本教程的学习,能够立刻学以致用,真正将所学知识应用到项目实践中。
开发环境:Atmel Studio 7.0
硬件平台:Microchip AVR ATmega168PA
参考教材:C++程序设计(第3版) 谭浩强编著,清华大学出版社
备注:教程仅适合初学者,高手请绕过
本文将对教材P93页的例程4.4进行改进,使之能够运行于Atmel Studio,例程的功能是使用函数比较4个数的大小。
一、源程序(改进后)
/*
* 项目名称:用函数比较4个数的大小
* 作者:snmplink
* 创建时间:2018-11-27
* 备注:
*/
#include <avr/io.h>
int max_2(int p, int q);
int max_4(int p, int q, int s, int t);
int main(void)
{
int a, b, c, d, e;
a = 11;
b = 45;
c = -54;
d = 0;
while (1)
{
e = max_4(a, b, c, d);
}
}
int max_2(int p, int q)
{
if (p > q)
{
return p;
}
else
{
return q;
}
}
int max_4(int p, int q, int s, int t)
{
int m;
m = p;
m = max_2(m, q);
m = max_2(m, s);
m = max_2(m, t);
return m;
}
二、运行结果
三、流程图
四、注解
1、C语言不允许对函数作嵌套定义;
2、在一个程序中每一个函数的定义都是互相平行和独立的;
3、C语言允许函数做嵌套调用。