形参和实参,C语言函数
分类:关于美高梅

C语言-04函数,-04函数

C语言函数

 

1.参数

参数注意点
1.形式参数:定义函数时函数名后面中的参数,简称形参
2.实际参数:调用函数式传入的具体数据,简称实参
3.实参个数必须等于形参个数
4.函数体内部不能定义和形参一样的变量
5.如果是基本数据类型作为函数形参,纯粹是值传递,修改函数内部形参的值,并不会影响外面实参的值
6.一个函数可以没有形参,也可以有无限多个形参

一、是什么?

C语言函数

2.返回值

return的作用:
1> 退出函数
2> 返回一个具体值给函数调用者

返回值注意点
1> void代表没有返回值
2> 如果没有明确说明返回值类型,默认是返回int类型
3> 就算明确声明了返回值类型,也可以不返回任何值

默认情况下,C语言不允许两个函数的名称一样

是指编程中对一块功能代码的封装,可以理解一个程序片段

一、函数

3.#include  <文件名.扩展名>系统的   “文件名.扩展名”自定义的

include 是将函数的声明复制过来,防止了编译时出现警告

cc.文件名.o 在做链接的时候 是将系统库函数的定义做链接

1.参数 参数注意点 1.形式参数:定义函数时函数名后面中的参数,简称形参 2.实际参数:调用函数式传入的具体数据,...

二、有什么用?

C语言程序是由函数构成的,每个函数负责完成一部分的功能,函数将工恩呢该封装起来,以供程序调用。

可以封装代码,方便调用,提高复用性

 

三、怎么用?

二、函数定义

定义:  返回值类型  函数名(形参类型 参数名1....){代码块   返回值}

目的:将一些常用的功能封装起来,以供日后调用。

调用:  函数名(实参1,实参2....);

步骤:确定函数名,确定函数体,调用

四、什么时候用?

格式:返回值类型 函数名(形式参数列表)

当需要取封装一段代码实现一个对应的功能时候

  {  函数体 }

五、有什么特点?

 

1.返回值类型不定义,默认是int,如果不需要具体返回值类型,用void,return可以省略.

三、函数调用

2.是否要定义参数 看是否有未知内容参与运算,调用时参数必须对应,参数传递的是

定义函数需要明确定的东西:

3.return可以有多个,但是如果执行到return 就不会再执行后面的代码,函数执行结束.

①. 取一个有意义的函数名

4.函数不调用不执行,执行顺序看调用顺序,

②. 确定函数的形参

5.函数必须定义才能调用,但不能重复定义,不能嵌套定义.不能自己调用自己(死递归)

③. 编写函数体

6.C语言中不允许作嵌套的函数定义 ,但是可以嵌套函数调用

④. 返回值

函数的声明

示例:

一、是什么?

Int average(int num1,int num2)

是对编译器的一个说明,用于告知系统在本函数中所调用的函数是什么类型.

{

如:定义的函数的返回值类型是什么,参数类型是什么.

Return  (num1+num2)/2;

二、有什么用?

}

可以告诉编译器我将定义什么函数,从而让别的函数能方便调用

int main()

三、怎么用?

{

把函数去掉{},拷贝到声明区域(函数里或外)就可以.

Int a=1;

四、什么时候用?

Int b=3;

当需要定义函数的时候

Int c=average(a,b); //调用函数

五、有什么特点?

Return 0;

1.仅声明可以不创建函数,但要调用必须定义函数

}

2.声明可以只有参数类型,省略参数名如:int add(int);

  

3.函数使用前应该声明,不声明的话默认为返回值为int类型来处理,很可能出错

 四、参数

4.声明区域可以在其他函数里或者函数外.只要放在本函数调用之前就可以

①. 形参:定义函数时,函数名后面的参数 如num1和num2

5.函数的返回值是什么类型就要用什么类型的变量去接

②. 实参:调用函数时,传人的具体数据   如a和b

6.当被调函数的函数定义出现在主调函数之前时,在主调函数中也可以不对被调函数再作说明而 直接调用。

③. 形参和实参的个数必须相等

C语言的头文件

④. 函数体内部不能定义和形参同名的变量

一、是什么?

⑤. 如果是基本的数据类型作为形参,则是纯粹的值传递,修改函数内部形参的值并不会影响到实参的值

是C语言中以.h结尾的文件.如:stdio.h

⑥. 一个函数可以没有形参,也可以有无限个形参

二、有什么用?

 

用于声明(描述)一个函数,把多个代码文件(如:a.c.....b.c等)中的函数,声明在这个文件中,以便于使用已经封装好的函数

五、函数的返回值

三、怎么用?

(一)Return 的作用:

定义:  新建一个以.h结尾的文件,把需要用到的函数的声明直接放在里面.

①. 退出函数

引用:自定义的头文件:#include "头文件名.h"

②. 返回一个具体的值给函数的调用者

编译器类库里的头文件:#include<头文件名.h>

(二)返回值使用注意:

四、什么时候用?

①. C语言是弱语法弱类型的语言,非常不严格

当程序需要由多个c文件组成时

②. 如果没有写清楚返回值的类型,则默认为int型的

五、有什么特点?

③. Void代表没有返回值

1.在头文件中仅作声明,不做具体实现

④. 就算明确声明了返回值类型,也可以不返回任何的值

2.在头文件有声明只能确保编译成功成.o文件,但不确保能链接成功

⑤. C语言默认情况下,不允许有两个同名的函数

3.自定义的头文件引用时必须要有路径

六、函数使用注意

#include的用法

①. 默认不允许函数重名

一、是什么?

②. 函数之间是平等的,不能够嵌套定义

是C语言中的一个预处理指令

③. 函数不可以重复定义,但是可以重复声明,只要是在调用前声明就可以,地方随便

二、有什么用?

④. 函数如果是只要声明没有定义,那么编译可以成功,但链接时会失效

用于把一个文件的内容拷贝到所在位置

七、多人协作

三、怎么用?

#include<.stdio.h>是一个系统头文件。

引用:自定义的文件:#include "文件路径和名称"

#include<abc.txt>相当于把abc.txt文件中的所用内容以纯文本的方式拷贝到当前位置。

编译器类库里的文件:#include<文件名>

“”表示文件与.c文件处于同一路径,可以使用相对路径也可以使用绝对路径。左边有/的是绝对路径,没有/则为相对路径。

四、什么时候用?

注意:自定义的文件使用“”,系统文件使用<>。

当程序需要用到别的文件时

函数如果在调用时,函数定义在调用之后,且前面没有进行相应的声明,则编译器报错;

五、有什么特点?

调用函数,没有函数声明,编译器不会报错,链接时报错,不定义函数反而不报错。

1.可以定义在函数内也可以在函数外

链接:把项目中所以相关的.o目标文件和c语言的函数库合并在一起,生成可执行文件。

include可以包含头文件,也可以包含文本文件。include不一定非要写在第一行

通常:

2.必须包含路径.省略或./表示当前路径   /开头表示绝对路径  ../表示上一层路径

①. 函数的定义放在.c文件中,函数的声明放在.h文件中

3.以#开头,后面不能加分号

②. 如果要是有某个.c文件中定义的函数,只需要包含.c文件对应的.h文件即可

include 语句之后不需要加 ";"(因为#include它使一个预处理指令,不是一个语句)

③. .h文件生下来就是打酱油被别人拿来拷贝包含的,编译链接时不用写出

3.必须定义在要使用之前,否则可以编译通过生成.o文件,但不能链接成功

 

4.#include " " 包含的是一个用户定义的文件,可以是头文件,也可是普通文件

八、补充

1、#include " "在当前文件所在的路径下查找 2、如果上面没有找,到编译器include路径查找 3、如果编译器include路径下没有找到,系统的include路径下查找 4、如果上面三个都没有找到就报错了。

(1)main函数的返回值是返回给操作系统的,0为正常退出,其他值为非正常退出。用以进行系统日志,其实它返回任何值对程序本身没有影响,仅仅只是标记

#include <>包含一个系统(编译器自带)的头文件1、编译器的include路径下查找2、如果没有找到就系统include路径下查找3、如果都没有找到就报错

(2)Printf函数的返回值为字符数。如printf(“abc”);则返回值为3,若printf(“abc男n”);的返回值为7,因为一个中文占3个字符。

形参和实参

 

定义函数的时候,函数名后面小括号中的参数,简称形参形式参数是什么样类型的数据,那么实际参数也必须是什么样的类型


函数内部不可以定义与函数形参同名的变量,因为形参与函数的代码是一个代码块

调用函数的时候,函数名后面小括号中的参数,简称实参

发生函数调用时,主调函数把实参的值传送给被调函数的形参从而实现主 调函数向被调函数的数据传送。

参数的传递过程:

1.形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因 此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。

2.实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值,输入等办法使实参获得确定值。

3.实参和形参在数量上,类型上,顺序上应严格一致,否则会发生类型不匹配”的错误。

函数的返回值

函数的值只能通过return语句返回主调函数。

return语句的一般形式为:return表达式;

或者为:return (表达式);

return的功能是计算表达式的值,并返回给主调函数!

本文由美高梅网址发布于关于美高梅,转载请注明出处:形参和实参,C语言函数

上一篇:没有了 下一篇:没有了
猜你喜欢
热门排行
精彩图文