首页 > 其他分享 >初阶 《函数》 6. 函数的声明和定义

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

时间:2024-06-16 22:58:08浏览次数:11  
标签:初阶 return 函数 int ret Add main 定义

6. 函数的声明和定义

6.1 函数声明

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

int main(int argc, char* argv[], char* envp[])//表示main函数有3个参数
{
	return 0;
}
#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

#pragma once
int Add(int a, int b);

源文件
add.c

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

test.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;
}

标签:初阶,return,函数,int,ret,Add,main,定义
From: https://blog.csdn.net/2301_80359017/article/details/139596193

相关文章

  • Day28.学校类的定义与使用
    1.学校类的定义与使用_学校类__创建学校并关联班级 学校类__创建学校并关联班级,代码如下:#整合-->解耦合-->扩展性增强classSchool:#学校类#学校共有的数据school_name='OLDBOY'#每个学校独有的东西def__ini......
  • 回调函数的代码示例及其意义与作用
    回调函数的代码示例及其意义与作用在C语言中,回调函数(CallbackFunction)同样具有重要的意义和作用。尽管C语言没有像JavaScript或Python那样内置的高级异步处理机制,但回调函数在C语言中仍然被广泛应用,尤其是在以下场景:事件驱动编程:当某个事件发生时(如定时器到期、用户输入、文......
  • KAN神经网络 | KAN函数拟合附代码
    首先,让我们快速概述一下KAN及其实现的理论:柯尔莫哥洛夫-阿诺德表示定理:我们跳过繁琐的公式和定义,只用一个简单的解释。KART指出,任何具有多个输入的连续函数都可以通过组合单个输入的简单函数(如正弦或平方)并将它们相加来创建。例如,多元函数f(x,y)=x*y。这可以写成:((......
  • 好用的库函数,qsort函数大详解(干货满满!)(初阶)
    前言;  我一直在思考今天要写什么类型的文章,看到之前写的冒泡排序的写法,不过冒牌排序的算法只能针对于整型,我们如果想要排序浮点型,字符型的数据呢?这个时候我突然想到了比冒泡排序还好用的一个库函数,就是我们今天的主角——qsort函数,下面不多废话,直接进入正文: 目录:1.qsor......
  • 【Python】高阶函数
    高阶函数高阶函数是接受另一个函数作为参数,并返回一个函数作为结果的函数。这种类型的函数是函数式编程的核心,因为它们允许对行为进行抽象和复用,使得代码更加简洁和灵活。defapply_function(func,value):returnfunc(value)defsquare(x):returnx*xpr......
  • 裸函数和调用约定
    一、裸函数在正常的函数编译中,即使函数没有定义函数体的内容,编译器也依然会编译出部分汇编指令用来执行函数。但是如果定义一个裸函数void_declspec(naked)test()编译器将不会操作这个函数,不会给其生成汇编指令(但是会在主函数中生成call和jmp指令指向这个裸函数)可以看到......
  • DDMP中的损失函数
    接着扩散模型简述训练扩散模型过程中用到的损失函数形式。完整的观察数据\(x\)的对数似然如下:\[\begin{aligned}\mathrm{log}\p(x)&\geq\mathbb{E}_{q_{\phi}(z_{1:T}|z_0)}\mathrm{log}\frac{p(z_T)\prod_{t=0}^{T-1}p_{\theta}(z_t|z_{t+1})}{\prod_{t=0}^{T-1}q_{\phi}......
  • 简述回调函数的意义和作用
    回调函数是一种在程序中广泛使用的机制,它的意义和作用主要包括以下几个方面:异步操作:在一些需要异步执行的任务中,如网络请求、文件读写等,回调函数可以在任务完成后被调用,以便进行后续的处理。这样可以避免阻塞程序的执行,提高程序的响应性和效率。事件处理:回调函数可以用于处理各......
  • 【iOS】自定义cell及其复用机制
    文章目录cell的复用注册非注册两者的区别自定义cellcell的复用当用户滚动UITableView或UICollectionView时,只有少量可见的cell会被实际创建和显示。对于那些暂时不可见的cell,系统会将它们缓存起来以备将来复用。这就是所谓的cell复用机制。为什么需要......
  • 编写多个函数的ROP链
    我们已经学会了编写单个和两个简单函数的ROP链,在这里我们说一下,编写ROP链多个需要注意的问题之前我们在学习两个函数的ROP时,编写了这样的payload我们当时没有考虑,参数冲突和栈溢出大小,现在我们来说一说举个例子,如果我们上次学习的两个函数的ROP中没有gets函数,而是read函数我们......