iOS开发学习笔记 2-6 C语言部分 函数及变量的作用域

iOS开发——c语言——scanf函数详细讲解 scanf的使用详解 1、简介 scanf函数是标准的格式化输入函数,也就是从标准输入设备(键盘) 读取输入的信息。在stdio.h中声明,因此要使用scanf函数,必须加入 #import 。使用scanf时候时,需要传入变量地址作为参数,且scanf函数会等待标准输入设备(键盘)输入数据,并将输入的数据赋值给变量地址对应的变量。且返回成功赋值的数据项,如果遇到错误或遇到en 阅读详情
一、函数的基本知识
     
     函数就是一系列语句的组合,通常由返回值、形参、函数体组成;
     函数的使用步骤分为三个步骤:声明、定义、调用。
     
     1、函数定义
     1-1、描述函数功能的代码称为函数定义,函数定义的通用形式:
     类型 函数名(参数列表)
     {
           申明语句
     }     
     例如:
     int sum(int i, int j)
     {
          int sum;
          sum = i + j;
          return sum;
     }
     1-2、(参数列表)里面的参数称为形参;
     1-3、如果一个函数不返回任何值,那么它的类型就是void;
     1-4、如果一个函数没有定义返回值类型,编译器默认其返回值类型为int,但是最好显示的指明函数的类型;
     1-5、函数内部声明的变量称为局部变量,它只在函数内部有效,函数调用结束后就会销毁;
     1-6、return语句用来返回函数的执行结果,可以包含表达式,也可以不包含表达式,当遇到rerurn语句是,函数的执行便告终止,并将控制返回给调用环境,如果return语句包含了表达式,那么这个表达式的值将传递给调用环境;
     1-7、在必要的情况下,return语句的返回值类型会转换成函数定义所指定的类型。

     2、函数的声明
     2-1、函数在使用之前需要进行声明,ANSI C提供一种函数声明语法,称为函数原型,函数原型告诉编译器这个函数所接受的参数的数量和类型,以及该函数的返回值的类型。
     函数的声明形式如下:
     返回值类型 函数名(参数列表);
     例如:
     int sum(int i, int j);
     其中标示符可以省略,等价于int sum(int, int)
     2-2、由于编译器从上到下执行代码,所以下面的代码调用上面的函数,不需要声明,但上面的代码调用下面的函数,就必须声明。
     
     3、函数调用
     在准备使用函数的时候,执行“函数名(参数)”,就调用了函数体的语句。
     3-1、有参的函数在定义时使用的参数叫形参,当调用此函数时需要传入的参数就是实参。
     3-2、调用函数时,需要函数的执行结果,这时就需要返回值类型标识结果的类型,函数体内部需要使用return关键字,标识具体的函数结果(返回值)。
     3-3、如果函数有返回值,当调用函数时,通常会使用变量接收返回值。
     3-4、如果函数执行后,不需要结果,就定义函数的返回值类型void(空),也就不需要return关键字。
     3-5、如果执行函数需要参照一些特定的条件,就可以使用参数,如果有多个参数,之间用分隔符","。
     3-6、使用参数的时候,相当于实参传递值给形参,如果需要将声明的变量传递给形参,此时传递给形参的值是变量的一份拷贝,并不是变量本身,这也称为值传递;
     3-7、关于return与exit(0) 两个关键字:
              exit(0)是一个函数,用于退出整个程序,需要包含一个stdlib.h;
              return 可以做为返回值的关键字,终止当前函数的继续执行。

二、变量的作用域
















数学建模小白必看:层次分析法(AHP)从入门到实战(附Python代码) 本文详细介绍了层次分析法(AHP)在数学建模竞赛中的应用,从构建判断矩阵到一致性检验,再到权重计算和实战案例。通过Python代码实现,帮助小白快速掌握AHP的核心技巧,解决评价类难题,提升建模效率。 阅读详情

相关推荐

Lakes.AERMOD.View.v8.9.0 1CD大气扩散模型软件包

Lakes.AERMOD.View.v8.9.0 1CD大气扩散模型软件包 Lakes Environmental ARTM View v1.4.2 1CD放射物扩散模拟模型 Aermod View是一套完整的、功能强大的大气扩散模型软件包,并将美国EPA指定的大气扩散模型(如下)完美的集成成为一个综合的操作平 台: - AERMOD 电话TEL:18980583122  客服 QQ:11

yyii0000的博客 4001

浅谈iOS方法体作用域中的堆和栈

在iOS函数体中,局部变量是放在栈中; 对象是放在堆中,该空间是自动分配的。 当程序检执行完某函数,程序就会跳出该函数的作用域,在栈中的局部变量会自动被回收;但是在堆中的对象需要程序员手动释放(现在ARC了,程序员不需要管理对象释放的问题了) eg.在如下示例程序中,整型变量a、b和指针变量p都是放在栈中;当程序执行完main函数时,a、b、指针变量p会被释放。但位于堆中

alsnmg的专栏 938

RobotStudio码垛机器人创建过程

首先导入一个IRB2600机器人,移动夹具的本地坐标原点,使原点位置为顶面中心(与法兰盘连接的部位)。对齐夹爪Smart组件的本地坐标和机器人末端法兰盘的坐标...

个人博客 1万+

Python Day04

函数 基础 什么是函数:把具有独立功能的代码块组织为一个小模块->一系列python语句的组合,可运行一次或多次,具有独立功能 为什么使用:代码的复用最大化,最小化冗余代码,整体代码结构清晰,问题局部化 定义(封装)函数 def 函数名(参数列表): 代码块(一系列python语句) 调用 执行函数定义里的代码块,调用前一定要先定义 def printinfo(): print(...

lanyuzi1的博客 785

K8S 1.28.2 + Calico 3.27.3 保姆级安装避坑指南:解决节点NotReady问题

本文提供了一份详细的Kubernetes 1.28.2与Calico 3.27.3集群部署指南,重点解决节点NotReady这一常见问题。通过版本兼容性分析、精细化环境配置、kubeadm初始化参数详解及Calico Operator部署,手把手指导用户避开网络插件配置陷阱,确保集群从NotReady状态恢复健康并稳定运行。

weixin_28835583的博客 394

四自由度机械臂Matlab仿真全流程:从DH参数建模到轨迹规划实战

本文详细介绍了四自由度机械臂在Matlab中的完整仿真流程,从DH参数建模到轨迹规划实战。通过Robotics Toolbox工具,读者可以学习如何构建机械臂模型、验证运动学特性,并实现平滑的轨迹规划。文章还提供了性能优化技巧和常见问题解决方案,帮助开发者高效完成机械臂仿真项目。

weixin_29061041的博客 238

iOS开发 部分常用函数

iOS开发中可能会用到的部分函数汇集: rand() ----随机数 abs() 、labs() ----整数绝对值 fabs() 、fabsf() 、fabsl() ----浮点数绝对值 floor() 、floorf() 、floorl() ----向下取整 ceil() 、 ceilf() 、ceill() ----向上取整 round() 、roundf() 

编码演绎世界 824

一次渗透测试引发的Json格式下CSRF攻击的探索

一次渗透测试引发的Json格式下CSRF攻击的探索

weixin_52501704的博客 1048

【C】C语言函数中的变量(包括:作用域、存储类型)

局部变量和全局变量 C语言中变量按其作用域分,可分为局部变量和全局变量,具体的解释为: 局部变量(内部变量):在定义它的函数内有效,但是函数返回后失效; 全局变量(外部变量):在所有源文件内均有效。在同源文件的函数中使用使用全局变量,需要将全局变量提前声明;同时在不包含全局变量定义的不同源文件需要用extern关键字再次声明。 关于C语言全局变量和局部变量,还有几个注意点: 如果在该函数内...

Yngz_Miao的博客 1万+

近五年体内微/纳米机器人赋能肿瘤精准治疗综述:以 GBM 为重点

摘要 微/纳米机器人在实体瘤治疗领域展现出突破性潜力,通过主动运动能力解决传统纳米药物递送效率低、渗透不足等核心问题。2021-2025年间形成三条技术路线:1) 磁驱、声驱等运动增强递送实现深层渗透;2) 与免疫治疗融合实现原位免疫唤醒;3) 针对胶质母细胞瘤开发跨屏障递送系统。研究重点从单一运动性能转向"运动-分布-疗效"的系统评价,需建立标准化指标评估运动学参数、肿瘤分布均匀性和安全性。未来挑战在于临床转化的可制造性、闭环操控及生物相容性优化,特别是对血脑屏障穿透等复杂场景的系统集

AllenLV的博客 5133

ZYNQ系列PS侧和PL侧DDR3或DDR4在AD(Altium Designer 25)中的layout布线规则约束

DDR3或DDR4的PCB布线规则通常有相对固定的要求,对应的,在PCB设计时有固定的约束设置。

FPGA艺术家的博客 787

iOS之 深究extern,static的用法和作用

extern首先看代码示例:GDGPerson.m 文件#import "GDGPerson.h"@implementation GDGPerson int age = 10; @end main.m文件 ,不用包含GDGPerson类的头文件#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {

iOS鸽子的技术博客 6581

《SAP FICO系统配置从入门到精通共40篇》030、集成配置:FI与生产计划(PP)的自动科目确定

FI和PP的自动科目确定,本质上是把生产业务翻译成会计语言。翻译规则就藏在那些配置表里。配的时候多想一步:这个业务动作,在财务眼里是什么?是材料消耗?是产出入库?还是工费分摊?想清楚这个,再看配置界面,那些代码就不是天书了。最好的测试方式,是月底关账前,让生产部门跑一遍所有类型的生产订单。配置对不对,业务最知道。

985大学毕业,前某大厂员工,啥都会点的程序员! 574

c语言必须有形参吗_C语言注意点汇总

计算机的一切源头都是0和1,其中0:断电,1:有电。计算机语言发展史:机器语言--汇编语言--高级语言。机器语言0、1直接对硬件起作用。汇编语言,给机器语言添加了一些符号,使其更易于让人理解、记忆。高级语言,非常接近自然语言,简单易用,易于理解,但执行效率略低。C语言发展历史:BCPL语言---B语言---C语言---C++。1989年,C语言被美国国家标准局部ANSI制定出来C语言标准...

weixin_39775910的博客 5380

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C语言的iOS开发

综上所述,C语言在iOS开发中仍具有重要的地位和应用场景。从历史渊源到现今的实际应用,C语言为iOS开发提供了基础。尽管现代的iOS开发越来越倾向于使用Swift和Objective-C,但C语言的高性能、灵活性和可移植性使其在特定领域依然不可或缺。开发者应该掌握C语言,并灵活运用,使其成为提高iOS应用性能的重要工具。通过不断学习和实践,可以在这条技术道路上走得更远,创造出更加优秀的应用。

2501_91313831的博客 463

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

c语言的程序怎么安装在ios,iOS开发基础之C语言

为何学习iOS开发要先学C语言呢,学习c语言对ios开发有何作用。现在越来越多的iOS开发兴趣爱好者投入到了iOS培训中,有的是已经在职的员工,有的是还在就读的学生,还有一些是完全零基础的同学,那么对于他们来说就要一切从基础开始学,首先从C语言学起。因为C语言是一门语言基础,因具备简洁、灵活等特点而被广泛应用,在多种开发环境中都起着重要作用。那么,为什么学习iOS开发要先学C语言呢?因为在iOS开...

weixin_42501631的博客 445

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

用c语言开发一个安卓APP,c语言开发的app-用c语言可以开发app吗

通常,IOS应用使用C ++和对象的C,以写的,但到的xcode通过该程序。您可以写信给重用OC,A应用程序也可以用一个OC C ++结合起来写,我读了一外地开发商说,代码app1000行,他开发800是C ++,200条OC 。电话软件c编程语言都可以用来C4droid,使用GCC /克++编译器。手机当前使用的编程是最大的。WINTC简繁双语版WINDOWS平台的开发工具。学习C用好,支持中国...

weixin_31809171的博客 1万+

后台开发Web前端岗,JavaScript之变量作用域的介绍,真是恍然大悟啊

小编综合了阿里的面试题做了一份前端面试题PDF文档,里面有面试题的详细解析CodeChina开源项目:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

m0_60567881的博客 927

iOS-C语言和OC部分

学习iOS-C语言和OC部分一些基础的知识(非常有用哈)1 . 谢谢大家的观赏哈!~过几天还有OC更多相关细节 希望大家多关注一下!~ 2.编译.m 文件步骤; 先cc -c 文件名.m 在cc 文件名.o 最后./a.tou 另一种方法: cc -o 文件名.m ./a,.out 另一种方法: gcc -o 文件名 文件名.m ./文件名 3.static 定义静态变量 限制变量为文件变量;把变

ioszhaopan的博客 378

ios的c语言,iOS基础之C语言部分

1. C语言初探程序运行过程预处理(Pre-Processing) : 预编译过程主要处理那些源代码文件中以”#”开始的预编译指令。"#define"指令:处理条件预编译指令,比如"#if"、"#ifdef"、"#elif"、"#else"、"#endif",将所有的"#define"删除展开所有的宏定义。 "#include"预编译指令 : 将被包含的文件插入到该预处理指令位置。这是一个递归过程...

weixin_29281941的博客 783

ios c语言静态变量,iOS开发 -- C语言基础13(变量类型)

题外话:我一直在考虑后面的一些东西是放到OC里面去写还是直接在C语言中写出来,感觉还是应该写到C里面来,所以C语言的基础学习可能会多一点,希望大家能够耐心一点iOS开发 -- C语言基础13(变量类型)一、变量的作用域C语言根据变量作用域的不同,将变量分为局部变量和全局变量。1.局部变量1> 定义:在函数内部定义的变量,称为局部变量。形式参数也属于局部变量。2> 作用域:局部变量只在定...

weixin_39633437的博客 160

ios是c语言写的,ios操作系统是用什么语言写的

对于苹果手机大家都有所了解,那么对于ios操作的开发语言大家又知道多少呢?小编为大家整理了ios操作系统的开发语言介绍,希望对大家有帮助。ios操作系统的开发语言——Ojective-CObjective-C是iOS的开发语言。Objective-C是C语言的升级版。对初学者来说,Objective-C存在了很多令人费解的写法,实际上他们是非常优雅的。有C语言基础的程序员在专业老师的指导下,用1个...

weixin_42140710的博客 4219

iOS开发之c语言入门教程

苹果作为移动互联的高端品牌,iOS操作系统也被用户公认为是最好用的移动互联网操作系统。据了解,曾一度拒绝为iOS平台对出浏览器的火狐在今年5月份的时候,他们却食言了。今天,Mozilla宣布iOS版Firefox的首个公开预览版正式推出,Beta正式结束,新西兰用户现在已能尝鲜。由此可见,iOS的发展已经是势不可挡。   iOS的发展无疑为很多开发爱好者提供了新的机遇,要想利用iOS平台开发出好

haru2015的博客 1094

C语言程序设计之基础(变量、运算符、数组、函数)

一、变量 命名规范:数字、字母、下划线,都可以为变量命名。做为变量名的开头不能为数字,变量名不能为关键字。 C语言中的变量,按照作用于可以分为两种,局部变量和全局变量。 局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内, 离开该函数后再使用这种变量是非法的。如下所示: int f1(int a){    int b,c;  /* a,b,c仅在函数f

863

iOS开发Objective-C 语言变量的作用域

IOS中,修饰变量的关键字有四个,分别是:@public,@private,@protected,@package,其中@package在开发过程中用到的较少。  1  @public      被这个关键字修饰的变量是完全开放的,只要有这类的对象存在,就可以访问到这个变量。  2  @protected      被这个关键字修饰的变量是受保护的,只有在声

ccnanxi的博客 679
上一篇: iOS开发学习笔记 2-5 C语言部分 数组
下一篇: iOS开发学习笔记 2-7 C语言部分 字符串
BobooO
博客等级 码龄18年 29粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值