C语言——函数基本知识
什么是函数
函数的定义
- 函数就是程序中独立的功能。(简单来说就是把代码打包成整体,起个名字,方便以后使用)
函数的使用
定义函数的格式
- 格式:
返回值类型 函数名(形参1,形参2,...) {
函数体;
return 返回值;
}
- 例子:
int max(int num1, int num2) {
int a;
if (num1>num2) {
a = num1;
}
else
{
a = num2;
}
return a;
}
定义函数简单方法——三问
- 我定义函数是为了干什么事情(决定函数体)
- 我干这件事,需要什么才能完成(决定形参)
- 我干完了以后,是否需要继续使用的数据(决定返回值))
函数的注意事项
- 函数不调用就不会执行。
- 函数名不能重复。
- 函数与函数之间是平级,不能在函数里面嵌套定义函数
- 自定义的函数如果写在main函数下面,就需要在main函数里面声明(因为程序会默认直接找到main函数进行读,会自然读到main函数的return 进行退出,那么main函数后面的函数不会被程序读取,所以需要声明)。
- return下面不能继续写代码,因为他们永远不会被读取,属于无效代码。
- 函数的返回值类型为viod,那么表示函数无返回值,可以不用写return,或者直接写return 后面不跟数据,仅代表结束函数。
常见函数
查询函数的三种方法
- 网页
http://zh.cppreference.com
跳转查询网页 - 在vscode里面
ctrl+左键
可以点进函数,查看帮助 - 询问人工智能
函数的示例
C语言——函数基本知识的更多相关文章
- C语言函数指针基础
本文写的非常详细,因为我想为初学者建立一个意识模型,来帮助他们理解函数指针的语法和基础.如果你不讨厌事无巨细,请尽情阅读吧. 函数指针虽然在语法上让人有些迷惑,但不失为一种有趣而强大的工具.本文将从C ...
- 动态修改 C 语言函数的实现
Objective-C 作为基于 Runtime 的语言,它有非常强大的动态特性,可以在运行期间自省.进行方法调剂.为类增加属性.修改消息转发链路,在代码运行期间通过 Runtime 几乎可以修改 O ...
- C语言面试基础知识整理
一.预处理 1.什么是预编译?何时需要预编译? (1)预编译又称预处理,是做些代码文本的替换工作,即程序执行前的一些预处理工作.主要处理#开头的指令,如拷贝#include包含的文件代码.替换#def ...
- C语言函数指针 和 OC-Block
C语言函数指针 和 OC-Block 一. C语言函数指针 关于函数指针的知识详细可参考:http://www.cnblogs.com/mjios/archive/2013/03/19/2967037 ...
- 10分钟学会Python函数基础知识
看完本文大概需要8分钟,看完后,仔细看下代码,认真回一下,函数基本知识就OK了.最好还是把代码敲一下. 一.函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运 ...
- 【C语言学习笔记】C语言函数执行成功时,返回1和返回0,究竟哪个好?
基本上,没有人会将大段的C语言代码全部塞入 main() 函数,更好的做法是按照复用率高,耦合性低的原则,尽可能的将代码拆分不同的功能模块,并封装成函数.C语言代码的组合千变万化,因此函数的功能可能会 ...
- 从linux0.11中起动部分代码看汇编调用c语言函数
上一篇分析了c语言的函数调用栈情况,知道了c语言的函数调用机制后,我们来看一下,linux0.11中起动部分的代码是如何从汇编跳入c语言函数的.在LINUX 0.11中的head.s文件中会看到如下一 ...
- C语言(函数)学习之strstr strcasestr
C语言(函数)学习之[strstr]&[strcasestr]一.strstr函数使用[1]函数原型char*strstr(constchar*haystack,constchar*needl ...
- C语言函数sscanf()的用法
从文件读取数据是一件很麻烦的事,所幸有sscanf()函数. C语言函数sscanf()的用法 sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: int sscanf( st ...
- 不可或缺 Windows Native (6) - C 语言: 函数
[源码下载] 不可或缺 Windows Native (6) - C 语言: 函数 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 函数 示例cFunction.h # ...
随机推荐
- Reinforcement Learning (DQN) 中经验池详细解释
一般DQN中的经验池类,都类似于下面这段代码. import random from collections import namedtuple, deque Transition = namedtu ...
- SpringCloud做的微服务项目--外卖订餐系统
本项目用到的组件技术可以参考我上一篇博客,来学习. 项目需求: 客户端:针对普通用户,用户登录,用户退出,菜品订购,我的订单 后台管理系统:针对管理员,管理员登录,管理员退出,添加菜品,查询菜品,修改 ...
- Java面试题:细数ThreadLocal大坑,内存泄露本可避免
一.背景ThreadLocal是Java中用于解决多线程共享变量导致的线程安全问题的一种机制.它为每个线程分配一个独立的变量副本,从而避免了线程间的数据竞争.这个我们从上一篇文章<Java面试题 ...
- 零信任策略下K8s安全监控最佳实践(K+)
简介: 本文重点将围绕监控防护展开,逐层递进地介绍如何在复杂的分布式容器化环境中借助可观测性平台,持续监控K8s集群,及时发现异常的 API 访问事件.异常流量.异常配置.异常日志等行为,并且结合合理 ...
- 宏杉科技加入阿里云PolarDB开源数据库社区
简介: 宏杉科技签署阿里巴巴开源CLA(Contribution License Agreement, 贡献许可协议), 正式与阿里云PolarDB 开源数据库社区牵手. 宏杉科技签署阿里巴巴开源CL ...
- 用了那么久的Lombok,你知道它的原理么?
简介: 在写Java代码的时候,最烦写setter/getter方法,自从有了Lombok插件不用再写那些方法之后,感觉再也回不去了,那你们是否好奇过Lombok是怎么把setter/getter方法 ...
- [Gin] 支持 FORM 和 JSON 参数的绑定与验证
Gin 支持对不同传参方式的参数进行统一绑定并验证,比如如下两种格式: Content-Type: application/x-www-form-urlencoded with a=XX&b= ...
- DE10-Lite输入/出高/低电平说明
DE10-Lite输入/出高/低电平说明 DE10-Lite实验板上有一些设备可以输入/出高/低电平,说明如下: HEX 7-segment LED displays (active low)共阳极 ...
- ansible(5)--ansible的script模块
1. script模块 作用:在远程主机运行本地的脚本: 调用格式: -m script -a "/PATH/TO/SCRIPT_FILE": 参数: creates:如果其后跟的 ...
- ubuntu编译与安装 OpenSSL-1.0.0
apt-get purge openssl rm -rf /etc/ssl #删除配置文件 编译与安装 OpenSSL prefix 是安装目录,openssldir 是配置文件目录,另外建议安装两次 ...