C语言——函数的定义和声明

C语言——函数的定义和声明

函数

函数是一组一起执行一个任务的语句。每个 C 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数。

一.函数的定义

一个函数包括函数头和函数体,语法格式如下:

返回值类型 函数名(参数列表) //函数头

{

函数体

}

首先先来看一段代码,通过分解,来了解函数的构成

int add(int a,int b) //函数头部分

{

int sum;

sum = a + b;

return sum;

}

1.函数头

函数的入口,标志着代码的开始。函数头包括返回值类型、函数名和参数列表。

int add(int a,int b)

返回值类型:即C语言中的某个数据类型。例如,整型、字符型、浮点型变量。上述例子中的函数的返回值是int型值。

函数名:函数的标识符,在一个C语言程序中有且仅有一个。函数名add表示两数相加。

参数列表:调用函数时,用于将主调函数中的实际参数复制到该列表对应的形式参数中。可以没有参数,也可以同时拥有多个。这里定义了两个int型的变量,表示两数的相加。

2.函数体

函数通过函数体来实现特殊功能。

(1)无参函数:没有参数列表的函数。

void study();

void study()

{

printf("好好学习");

}

(2)空函数:没有任何内容和功能的函数。

void study();

void study()

{

}

函数的定义是相互平行、独立的。

函数体内部不能包含其他函数的定义

int main()

{

void study()

{

printf("好好学习");

}

return 0;

}

此时,编译器就会提示错误。

二.函数的声明

在程序中编写函数时,要先对函数进行声明,在对函数进行定义。

函数的声明如下:

返回值类型 函数名(参数列表);

通过交换两个数值的例子了解函数声明与函数定义的位置。

void exchange(int a, int b);

int main()

{

int a=4, b=5;

printf("交换之前的值:a=%d,b=%d\n", a, b);

exchange(a, b);

return 0;

}

void exchange(int a, int b)

{

int c;

c = a;

a = b;

b = c;

printf("交换之后的值:a=%d,b=%d\n", a, b);

}

注意:如果先定义函数,再调用函数,则不再需要进行函数声明,此时函数定义已经包括了声明。

意思就是我们可以直接写出一个函数,并不需要在对他声明一次。例如下面代码的写法也是正确的。

void exchange(int a, int b)

{

int c;

c = a;

a = b;

b = c;

printf("交换之后的值:a=%d,b=%d\n", a, b);

}

int main()

{

int a=4, b=5;

printf("交换之前的值:a=%d,b=%d\n", a, b);

exchange(a, b);

return 0;

}

三.函数的分类

1.库函数

由C语言系统提供,用户无需定义,调用前也不用做声明,但在程序开始的部分包含该函数的头文件。例如,用来打印的printf函数,需要包含stdio.h头文件;用来求字符串长度的strlen函数,需要包含string.h头文件。

2.自定义函数

用户自己编写用来实现特殊功能的函数。

相关推荐

迪巴拉:希望得到阿根廷征召参加明年世界杯 是穆帅吸引我来罗马
pmp项目的管理是什么
be七365官网

pmp项目的管理是什么

📅 07-06 👁️ 5521
从自贡市辖区到眉山多少公里、要多长时间、自驾最佳路线、油费、过路费-开车从自贡市辖区到眉山路线(返程)
开店卖服装利润怎么算?一年大概可以赚多少钱?
开车是什么意思污(开车为什么是污的意思)
365bet中文官方网站

开车是什么意思污(开车为什么是污的意思)

📅 07-13 👁️ 5019
电信宽带办理了要多久才安装
be七365官网

电信宽带办理了要多久才安装

📅 07-08 👁️ 2403