C语言:函数

函数是对步骤的封装。

函数分两类:一类是系统函数,一类是自定义的函数。

系统自带的函数如我们现在一直在用的printf。

而今天我们主要说的是自定义函数。

首先,我们要明白自定义函数的目的就是为了把一些麻烦复杂的东西封装起来,当我想用的时候可以直接调用,当然除此之外函数还有其他的作用,此处不一一赘述。

步骤

1.函数声明:通常在主函数上面

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

返回值类型有int等等,如无返回值,则用void

自定义函数的名字不要与系统函数重名,会优先调用系统的函数

参数数量不限,即使没有参数也要有()

2.函数定义:通常在主函数的下面

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

{

具体封装内容

}

3.函数调用:

格式:函数名+(具体的参数)+分号

本质:函数地址+参数 函数名是函数的地址

例1:

cpp 复制代码
#include<stdio.h>

void Print();

int main()
{
	
	Print();



	return 0;
}
void Print()
{
	printf("hello\n");
}

函数中遇到return就结束,若函数无返回值,即为void时,可无return

例2:

cpp 复制代码
#include<stdio.h>

int ADD();

int main()
{
	
	printf("%d\n", ADD());



	return 0;
}

int ADD()
{
	int a = 1;
	int b = 2;

	return a + b;
}

例3:带参数

cpp 复制代码
#include<stdio.h>

int ADD(int,int);

int main()
{
	
	printf("%d\n", ADD(1,2));



	return 0;
}

int ADD(int a,int b)
{

	return a + b;
}

注:函数也可以调用函数

相关推荐
北冥you鱼31 分钟前
Go 语言 Channel 机制详解:从原理到实战
开发语言·后端·golang
谢亮_vipxieliang33 分钟前
Go 并发控制进阶:sync 包高级原语与 Context 生命周期管理
开发语言·后端·golang
xuxigifxfh1 小时前
HJ5 进制转换
java·开发语言·华为机考
denlaku1 小时前
JDK 12 新特性详解
java·开发语言
Nebula_g1 小时前
JavaSE拓展:可变参数
java·开发语言·算法·安全·javase·可变参数
Logic1011 小时前
C语言/数据结构字符串题解:最短循环节——找出能重复构成原串的最短基础子串
c语言·数据结构·字符串·枚举·时间复杂度·算法题·kmp优化
我就是不信1 小时前
CuTest:轻量级 C 语言单元测试框架实战指南
c语言·单元测试·log4j
anew___2 小时前
《从零手写操作系统 (30):环境变量与进程上下文——export/unset与继承语义》
java·开发语言·网络·jvm·算法
Cx330❀2 小时前
Qt 多线程深度解析:从底层原理到 UI 线程与同步实战
开发语言·qt·ui·搜索引擎·性能优化·图形渲染
谢亮_vipxieliang2 小时前
Go GMP调度模型——从原理到实战的完整指南
开发语言·网络·golang