C语言-学习之路-05

这篇具有很好参考价值的文章主要介绍了C语言-学习之路-05。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

函数
函数分类

C语言程序都是从主函数main()开始执行的。从函数的定义角度看,函数可分为系统函数和用户定义函数。

  • 系统函数(库函数):这是由编译系统提供,用户不必自己定义这些函数,但可以直接使用。例如scanf()、printf()、sizeof()等。
  • 用户定义函数:由用户自行定义编写的函数。
函数的作用
  • 使用函数可以省去重复代码的编写,降低代码重复率。
  • 函数可以使程序更加模块化,有利于代码的阅读、迭代、完善。
    案例:
#include <stdint.h>
#include <time.h>
#include <stdlib.h>

int max(int a, int b)
{
	if (a > b)
	{
		return a;
	}
	else
	{
		return b;
	}

}

int main(void)
{
	int a1 = 10;
	int b1 = 12;
	int c1;
	c1 = max(a1, b1);
	printf("%d\n", c1);

	return 0;

}
函数的定义
函数定义格式

返回类型 函数名(形式参数列表)
{
数据定义部分;
执行语句部分;
}
C语言-学习之路-05

函数名字、形参、函数体、返回值

函数名:见明知意即可,注意:函数名后面的(),代表这个是函数,不是普通的变量名。
形参列表:在定义函数时指定的形参,在未出现函数调用时,它们并不占内存中的存储单元,因此被称为形参,而且形参不能赋值。在定义函数时,形参必须指定类型和变量。
函数体:main()下的{}内的内容为函数体,主要为函数功能实现程序。
返回值:函数的返回值是通过return语句活动的,return后面的值也可以使用表达式代替。

函数调用
无参函数调用
#include <stdint.h>
#include <time.h>
#include <stdlib.h>

void test()
{
	printf("hello world!");
}

int main(void)
{
	test();
	return 0;

}
有参函数调用
#include <stdint.h>
#include <time.h>
#include <stdlib.h>

void test(int a, int b)
{
	printf("%d\n",a);
}

int main(void)
{
	int a = 10;
	int b = 11;
	test(a,b);
	return 0;

}

如果不确定函数返回值是什么类型时,可使用void作为返回值类型。

函数的声明

如果使用用户自己定义的函数,而该函数与调用它的函数(即主调函数)不在同一文件中,或者函数定义的位置在主调函数之后,则必须在调用此函数之前对被调用的函数作声明。
所谓函数声明,就是在函数尚在未定义的情况下,事先将该函数的有关信息通知编译系统,就相当于告诉编译器,函数在后面定义,以便使编译能正常进行。
注:一个函数只能被定义一次,但可以声明多次!

#include <stdint.h>
#include <time.h>
#include <stdlib.h>

int max(int x, int y); //函数的声明,分号不能省略

int main(void)
{
	int a = 10;
	int b = 11;
	int max_number = 0;
	max_number = max(a, b);
	printf("最大值为%d\n", max);
	return 0;

}

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

函数定义和声明的区别文章来源地址https://www.toymoban.com/news/detail-433422.html

  • 定义是指对函数功能的确立,包括指定函数名、函数类型、形参及其类型、函数体等,它是一个完整的、独立的函数单位。
  • 声明的作用则是把函数的名字、函数类型以及形参的个数、类型和顺序,通知编译系统,以便在对包含函数调用的语句进行编译时,据此对其进行对照检查。
多文件(分文件)编程
分文件编程
  • 把函数声明放在头文件xxx.h中,在主函数中包含相应头文件。
  • 在头文件对应的xxx.c中实现xxx.h声明的函数。
    C语言-学习之路-05
    在工程项目中,防止头文件重复包含,一般使用#ifndef或#pragma once方式。

到了这里,关于C语言-学习之路-05的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包