鹏哥C语言44---函数的声明和定义

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

#include "add.h"

#include "sub.h"

//----------------------------------------------------------------------------------------------------6. 函数的声明和定义

//-----------------------------------------------------------------------------------------------6.1 函数的声明

/*

1.告诉编译器有一个函数叫什么,参数类型是什么,返回类型是什么。但是具体是不是存在,函数声明决定不了。

2.函数的声明一般出现在函数的使用之前。要满足先声明后使用。

3.函数的声明一般要放在头文件中的。

*/

//-----------------------------------------------------------------------------------------------6.2 函数的定义

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

---------------------------------函数的声明

// int Sub(int x, int y); //(放到add.h,在前边调用一下头文件 add.h)

// int Add(int x, int y); //(放到sub.h,在前边调用一下头文件 sub.h)

int Add(int , int ); //两者都可

int main()

{

int a = 0;

int b = 0;

scanf("%d %d", &a, &b);

int sum = Add(a, b);

printf("%d\n", sum);

int ret = Sub(a, b);

printf("%d\n", ret);

return 0;

}

--------------------------------函数的定义(放到add.c)

//int Add(int x, int y) //(放到add.c)

//{

// return x + y;

//}

//int Sub(int x, int y) //(放到sub.c)

//{

// return x - y;

//}

//函数定义到后边会警告:Add未定义

//可以在前边进行一下声明

// 把一个模块(加法函数模块)拆成 一个头文件(add.h 函数的声明),一个源文件(add.c 函数的定义),到底有啥好处?????????

// 包含头文件(#include "add.h")的意义 本质是把这个头文件的内容拷贝过来,从而实现函数声明的效果

//------------------------------------ add.h

#pragma once

//防止头文件被重复包含

// 加法 函数的声明

int Add(int x, int y);

//------------------------------------ add.c

// 函数的定义

int Add(int x, int y)

{

return x + y;

}

//------------------------------------ sub.h

#pragma once

//防止头文件被重复包含

// 减法 函数的声明

int Sub(int x, int y);

//------------------------------------ sub.c

// 减法函数的定义

int Sub(int x, int y)

{

return x - y;

}

相关推荐
达柳斯·绍达华·宁4 分钟前
感知算法引入时序模型的优势
深度学习·算法·卷积神经网络
DdddJMs__1359 分钟前
C语言 | Leetcode C语言题解之第415题字符串相加
c语言·leetcode·题解
时髦的琉璃6813 分钟前
HumanNeRF:Free-viewpoint Rendering of Moving People from Monocular Video 精读
人工智能·算法
街 三 仔15 分钟前
【C语言零基础入门篇 - 9】:文件操作
c语言·开发语言
代码雕刻家15 分钟前
数据结构-3.3.栈的链式存储实现
c语言·数据结构·算法
wangdachui_ooi15 分钟前
ESP32工程添加.c .h文件及常见错误
c语言·开发语言
沫刃起18 分钟前
Codeforces Round 971 (Div. 4) G1. Yunli‘s Subarray Queries (easy version)
数据结构·c++·算法
小七蒙恩27 分钟前
java的排序算法,代码详细说明
java·算法·排序算法
清风拂山岗111131 分钟前
【算法与数据结构复习】| 堆结构和堆排序
数据结构·算法
王哈哈嘻嘻噜噜39 分钟前
c语言中“sizeof”和“strlen”的区别
c语言·数据结构·算法