当前位置:网站首页>C语言-函数知识点
C语言-函数知识点
2022-06-28 19:07:00 【Viviana-0】
一、使用函数注意的地方:
1.void:表示函数不能接受数据
2.int:表示函数返回的是int类型数据
3.return 10:表示返回10
int f(void){
return 10;
}
1.以下代码是错误的:
函数名前面的void表示该函数没有返回值
void g(void){
return 1;
}
二、如何定义函数
1.函数定义
函数返回值 函数的名字(函数的形参列表){
函数的执行体
}
2.函数的返回值:也称为函数的类型
若函数名的返回值类型和函数执行体的return表达式不同,则是以函数的返回值为主
int f()
{
return 10.5;
}
返回10
3.return 与 break区别
- break是用来终止循环和switch的,return是用来终止函数的
- return 表达式;
含义:终止被调函数,向主调函数返回表达式的值如果表达式为空,则只终止函数,不向主调函数返回任何值
举个例子
1.如果是break输出
大家辛苦了!
同志们好!
2.如果是return输出
大家辛苦了!
void f(void){
int i;
for(i=0;i<5;++i){
printf("大家辛苦了!\n");
return;/break;
}
printf("同志们好!\n");
}
三、函数的分类:
- 有参函数 无参数
- 有返回值函数和无返回值函数
- 库函数和用户自定义函数
- 值传递函数和地址传递函数
- 关于普通函数和主函数(main)
一个程序必须有且只能有一个主函数主函数可以调用普通函数,反之错误普通函数可以互相调用主函数是程序的入口,也是程序的出口
四、函数的声明
函数的调用和函数定义的顺序:
1.如果函数调用写在了函数定义的前面,则必须加函数的前置声明
2.函数的前置声明:
- 告诉编译器即将可能出现的若干个字母代表的是一个函数;
- 告诉编译器即将可能出现的若干个字母所代表的函数的形参和返回值的具体情况;
- 函数声明是一个语句,末尾必须加分号;
- 对库函数的声明是通过# include <库函数所在的文件的名字.h>
void f();
int main(void){
f();
return 0;
}
void f(){
printf("hah\n");
}
五、形参和实参
- 个数相同
- 数据类型必须相互兼容
- 位置一一对应
void f(int i,float x){
printf("%d\n",i);
}
int main(void){
f(5,6.6);
return0;
}
六、递归
简单来说,就是一个函数直接或间接调用自身的一种方法。通常递归可以将一个复杂的大型问题层层转化为一个与原问题相似的规模较小的问题来求解。它的核心思想是把大事化小。
边栏推荐
- How many objects are created after new string ("hello")?
- rancher增加/删除node节点
- PostgreSQL database docker
- 应用实践 | 10 亿数据秒级关联,货拉拉基于 Apache Doris 的 OLAP 体系演进(附 PPT 下载)
- 请问下flinkcdc用flinksql提交的话只能一个表提交一个任务吗?那有几千张表的时候还能这么
- How to resolve kernel errors? Solution to kernel error of win11 system
- Rxjs map, mergeMap 和 switchMap 的区别和联系
- 智能计算系统3 Plugin 集成开发的demo
- async-validator.js数据校验器
- 列表加入计时器(正计时、倒计时)
猜你喜欢

Understanding of closures

leetcode 1423. Maximum points you can obtain from cards

视频压缩处理之ffmpeg用法

About Statistical Distributions

Cross cluster deployment of helm applications using karmada

Mindspire series one loading image classification data set

rancher增加/删除node节点

Win11如何给系统盘瘦身?Win11系统盘瘦身方法

Mybayis之核心主件分析

1 goal, 3 fields, 6 factors and 9 links of digital transformation
随机推荐
MongoDB系列之MongoDB工作原理简单介绍
Windows 64位下载安装My SQL
智能计算系统3 Plugin 集成开发的demo
AOSP Tsinghua image download error resolution
Month on month SQL implementation
令人惊艳的NanoPC-T4(RK3399)作为工作站的初始配置和相关应用
Opengauss kernel: analysis of SQL parsing process
use. NETCORE's own background job, which simply simulates producers and consumers' processing of request response data in and out of the queue
Understanding of closures
数据基础设施升级窗口下,AI 新引擎的技术方法论
A few lines of code can realize complex excel import and export. This tool class is really powerful!
In which industries did the fire virtual human start to make efforts?
春风动力携手华为打造智慧园区标杆,未来工厂创新迈上新台阶
About Statistical Distributions
Anonymous function variable problem
SQL calculates daily new users and retention rate indicators
视频压缩处理之ffmpeg用法
An in-depth analysis of the election mechanism in kubernetes
Are there any regular and safe foreign exchange dealers in China?
Shell脚本批量修改文件目录权限