c语言与c语言的关系,c语言与编程语言的区别

首页 > 技术 > 作者:YD1662022-11-22 17:02:59

有参函数和无参函数的唯一区别在于:函数 () 中多了一个参数列表。

形参与实参

函数的参数分为形参和实参两种。

形参是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数。

实参是在调用时传递该函数的参数。

函数的形参和实参具有以下特点:

c语言与c语言的关系,c语言与编程语言的区别(29)

函数的返回值

函数的返回值是指函数被调用之后,执行函数体中的程序段所取得的并返回给主调函数的值。

函数的返回值要注意以下几点:

return语句的一般形式为:

return 表达式

或者为:

return (表达式);

如果两者不一致,则以函数返回类型为准,自动进行类型转换。

递归函数

递归就是一个函数在它的函数体内调用它自身,递归函数必须有结束条件。

执行递归函数将反复调用其自身,每调用一次就进入新的一层。

一句话总结递归:自我调用且有完成状态。

例题:

有5个人坐在一起,问第5个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第3个人,又说比第2人大两岁。问第2个人,说比第1个人大两岁。最后 问第1个人,他说是10岁。请问第5个人多大?

程序分析:

利用递归的方法,递归分为回推和递推两个阶段。要想知道第5个人岁数,需知道第4人的岁数,依次类推,推到第1人(10岁),再往回推。

#include <stdio.h> int dfs(int n) { return n == 1 ? 10 : dfs(n - 1) 2; } int main() { printf("第5个人的年龄是%d岁", dfs(5)); return 0; }

局部与全局

C语言中的变量,按作用域范围可分为两种,即局部变量和全局变量。

变量存储类别

C语言根据变量的生存周期来划分,可以分为静态存储方式和动态存储方式。

静态存储方式:是指在程序运行期间分配固定的存储空间的方式。静态存储区中存放了在整个程序执行过程中都存在的变量,如全局变量。

动态存储方式:是指在程序运行期间根据需要进行动态的分配存储空间的方式。动态存储区中存放的变量是根据程序运行的需要而建立和释放的,通常包括:函数形式参数;自动变量;函数调用时的现场保护和返回地址等。

C语言中存储类别又分为四类:

用关键字auto定义的变量为自动变量,auto可以省略,auto不写则隐含定为“自动存储类别”,属于动态存储方式。如:

c语言与c语言的关系,c语言与编程语言的区别(30)

用static修饰的为静态变量,如果定义在函数内部的,称之为静态局部变量;如果定义在函数外部,称之为静态外部变量。如下为静态局部变量:

c语言与c语言的关系,c语言与编程语言的区别(31)

注意:静态局部变量属于静态存储类别,在静态存储区内分配存储单元,在程序整个运行期间都不释放;静态局部变量在编译时赋初值,即只赋初值一次;如果在定义局部变量时不赋初值的话,则对静态局部变量来说,编译时自动赋初值0(对数值型变量)或空字符(对字符变量)。

为了提高效率,C语言允许将局部变量得值放在CPU中的寄存器中,这种变量叫“寄存器变量”,用关键字register作声明。例如:

c语言与c语言的关系,c语言与编程语言的区别(32)

上一页45678下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.