C语言中函数的相关知识

一、函数的形参和实参

 二、函数的返回值

如果函数定义没有返回值,那么函数调用时不能写void关键字,调用函数时也不能接收函数的返回值。

#include <stdio.h>

void test()
{

}
int main(void)
{
	//函数调用
	test();//正确
	void test(); //错误。因为void关键字只能出现在定义中,不能出现在函数调用的地方。
	int a = test();//错误。因为函数定义根本就没有返回值

	return 0;
}

三、函数声明

(1)如果使用用户自己定义的函数,而该函数与调用它的函数(即主调函数)不在同一文件中,或者函数定义的位置在主调函数之后,则必须在调用此函数前对被调用的函数作声明。

(2)函数声明就是在函数尚未定义的情况下,事先将该函数的有关信息通知编译系统,相当于告诉编译器,函数在后面定义,以便使编译器能正常运行。

注意:一个函数只能被定义一次,但可以声明多次。

#include <stdio.h>

int max(int x, int y);//声明函数,分号不能省略
//int max(int,int)  //另外一种声明方式
int main(void)
{
	int a = 1;
	int b = 2;
	int num_max = 0;
	num_max = max(a, b);//调用函数

	printf("num_max = %d\n", num_max);

	return 0;
}

int max(int x, int y)
{
	return x > y ? x : y;
}

四、函数定义和函数声明的区别

五、main函数和exit函数

在main函数中调用exit(0)和return结果是一样的,但在子函数中调用return只是代表子函数终止了,在子函数中调用exit(0),那么程序终止。

(1)子函数中使用return时:

#include <stdio.h>
#include <stdlib.h>

void fun()
{
	printf("哈哈哈\n");
	return;
	//exit(0);
	printf("666\n");//此语句不会被执行,也就是说不会打印“666”
}
int main(void)
{
	fun();
	printf("验证程序是否终止\n");
	return 0;
}

(2)子函数中使用exit(0)时:

#include <stdio.h>
#include <stdlib.h>

void fun()
{
	printf("哈哈哈\n");
	//return;
	exit(0);
	printf("666\n");//此语句不会被执行,不会打印“666”
}
int main(void)
{
	fun();
	printf("验证程序是否终止\n");//此语句也不会被执行
	return 0;
}

(3)在main函数中用exit(0)代替return 0,效果和return 0是一样的。

#include <stdio.h>
#include <stdlib.h>

void fun()
{
	printf("哈哈哈\n");
	//return;
	//exit(0);
	printf("666\n");
}
int main(void)
{
	fun();
	printf("验证程序是否终止\n");
	exit(0);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值