初阶 《函数》 6. 函数的声明和定义

6. 函数的声明和定义

6.1 函数声明

  1. 告诉编译器有一个函数叫什么、参数是什么、返回类型是什么。但是具体是不是存在,函数声明决定不了。
  2. 函数的声明一般出现在函数的使用之前,要满足先声明后使用。
  3. 函数的声明一般要放在头文件中
c 复制代码
int main(void)//明确的说明,main函数不需要参数;本质上main函数是有参数的
{
	return 0;
}

int main(int argc, char* argv[], char* envp[])//表示main函数有3个参数
{
	return 0;
}
c 复制代码
#include <stdio.h>
int Add(int a, int b);
int main()
{
	int a = 0;
	int b = 0;
	scanf("%d %d", &a, &b);
	int ret = Add(a, b);
	printf("%d\n", ret);
	return 0;
}

int Add(int a, int b)
{
	return (a + b);
}

6.2 函数定义

函数的定义是指函数的具体实现,交待函数的功能实现。

头文件

add.h

c 复制代码
#pragma once
int Add(int a, int b);

源文件

add.c

c 复制代码
#define _CRT_SECURE_NO_WARNINGS
int Add(int a, int b)
{
	return (a + b);
}

test.c

c 复制代码
#include <stdio.h>
#include "add.h"
int main()
{
	int a = 0;
	int b = 0;
	scanf("%d %d", &a, &b);
	int ret = Add(a, b);
	printf("%d\n", ret);
	return 0;
}
相关推荐
会员果汁32 分钟前
算法-拓扑排序-C
c语言·开发语言·算法
Dillon Dong1 小时前
从C到Simulink:什么是MATLAB_MEX_FILE 宏,如何阻挡STM32 HAL 头文件
c语言·stm32·matlab
会员果汁2 小时前
算法-并查集-C
c语言·开发语言·算法
脏脏a3 小时前
链式存储范式下的二叉树:基础操作实现解析
c语言·数据结构·算法·二叉树
小刘爱玩单片机3 小时前
【stm32简单外设篇】- 红外避障 / 红外循迹模块
c语言·stm32·单片机·嵌入式硬件
Felven4 小时前
C. Contrast Value
c语言·开发语言·算法
leaves falling4 小时前
c语言打印闰年
java·c语言·算法
爱吃生蚝的于勒4 小时前
【Linux】深入理解软硬链接
linux·运维·服务器·c语言·数据结构·c++·算法
一路往蓝-Anbo4 小时前
【第23期】资源保护:关中断 vs 互斥量 (Mutex)
c语言·开发语言·stm32·单片机·嵌入式硬件·物联网
黎雁·泠崖5 小时前
C 语言文件操作入门:文件基础认知 + 打开关闭 + 字符字符串读写精讲
c语言·开发语言