首页 > 其他分享 >C语言--函数

C语言--函数

时间:2024-08-08 21:52:11浏览次数:9  
标签:调用 函数 形参 -- 函数调用 C语言 返回值 实参

函数的概述:

函数:实现一定功能的,独立的代码模块。函数一定是先定义,后使用

使用函数的优势:·我们可以通过函数提供功能给别人使用,也可以使用别人提供的函数,减少代码量

               ·借助函数可以减少重复的代码

               ·实现结构化(模块化)程序设计思想

结构化程序设计思想:将大型的任务、功能划分为相互独立的、小型的任务模块设计

函数是C语言程序的基本组成单元:C语言的程序是由一个(必然是main函数)或多个函数组成

函数分类:

从函数实现的角度:·库函数:C语言标准库实现并提供使用的函数,比如常见的有printf()、scanf()

     ·用户自定义函数:需要程序员自行实现,开发中大部分都是这样的函数

从函数形式的角度:·无参函数:函数调用时,无需传参,可配可不配

                 ·有参函数:函数调用是需要参数传递数据,经常需要配套返回值使用

相关概念:·主调函数:主动去调用其他函数的函数

         ·被调函数:被调用的函数

Eg:      

函数既可以是主调函数也可以是被调函数

函数的定义:

语法:返回类型  函数名(参数列表)  //函数首部

   {

函数体语句;   //函数体,整个花括号包裹的内容,包括      返回值都属于函数体

}

函数首部:·返回类型:函数返回值的类型

      ·函数名:函数的名称,遵循标识符命名(使用英文字母、数字、下划线“_”、$,不能以数字开头,建议小写加下划线命名法)

      ·形参列表:用于接收主调函数传递的数据,如果有多个用“,”进行分隔,且每一个形参都需要指定类型

面试题:

注意:

形参与实参:

概念:·形参(形式参数):函数定义时指定的参数,形参是用来接受数据的,函数定义时,系统不会为形参申请内存,只有当函数调用时,系统才会为形参申请内存,用于存储实际参数,并且当函数返回,系统会自动回收为形参申请的内存资源。(本质上所有的函数都有return,只不过当我们的函数返回类型是void的时候,return关键字被省略了)

     ·实参(实际参数):函数调用时,主调函数传递的数据参数(常量、变量、表达式,只要有确定的值),实参是传递的数据。在C语言中,参数传递遵循单项值传递,实参只是将自身的值传递给形参,而不是实参本身。形参的值的改变不会影响实参。

实参与形参在内存中占据不同的内存空间,尽管可能是参与形参名称是一样的。

函数的返回值:

被调函数返回给主调函数的结果数据(可以是变量、常量、表达式、只要是有确定值即可),返回值类型一般情况下需要和函数中return语句返回的数据类型保持一致,如果不一致,以函数定义时指定的返回类型为标准,也就是吧返回值类型和实际返回值可以存在自动转换或者强制类型转换

函数调用:

调用方式:·采用函数调用语句:函数名(实参)eg:test();int result = max(2,4);

         ·函数表达式:eg:4+max(2,4);

   ·函数参数:printf(“%d”,max(2,4));

在一个函数中调用另一个函数的条件:

函数的声明:

函数调用时,往往要遵循先定义,后调用,但如果对函数的调用操作出现在函数的定义之前,则需要对函数进行声明

函数声明:是把函数名、函数参数的个数和返回类型等信息通知给编译系统,以便于在遇到函数时,编译系统能正常识别函数,并检查函数调用的合法性

声明方式:

函数首部后加上分号:

函数首部后加上分号,可以省略形参名,但不能省略参数类型

函数的嵌套调用:

函数不允许嵌套定义,但允许嵌套调用

嵌套调用:在被调函数内又去主动去调用其他函数,这样的函数调用方式称之为嵌套调用;

标签:调用,函数,形参,--,函数调用,C语言,返回值,实参
From: https://blog.csdn.net/m0_74872789/article/details/140944532

相关文章

  • Java 怎么获取支付宝Open ID
    在Java中获取支付宝用户的OpenID,通常是通过支付宝的开放平台API来完成的。OpenID是支付宝用于唯一标识一个支付宝用户的字符串,它在OAuth授权流程中被用来获取用户的身份和权限。下面我将给出一个基于Java使用SpringBoot框架和支付宝开放平台SDK来获取用户OpenID的详细步骤和示例......
  • 深中通道元宇宙启航!3DCAT实时云渲染助力沉浸式体验深中通道
    2024年6月30日上午,深圳至中山跨江通道(以下简称“深中通道”)开通活动在深中通道西人工岛举行。10时50分许,深中通道正式开通。下午3时已通车试运营。粤港澳大湾区超级工程深中通道(图源新华网)01 幻海云桥:沉浸式体验的新纪元就在开通的同一天,中山日报社与3DCAT、广东涌态信息等......
  • 8.8
    一、学习内容泛型1.泛型的本质是为了将类型参数化(这种参数化类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。)2.泛型的使用泛型就是一种未知的类,将未知的类型声明在集合、对象上,泛型的默认类型为Object。使用泛型可以在传参的时候(使用?占位)不固定传入什么......
  • AppleScript实现FaceTime数据检测,FaceTime蓝号检测,无痕检测是否开通FaceTime功能
    FaceTime是苹果公司iOS和macOS(以前称MacOSX或OSX)内置的一款视频通话软件,通过Wi-Fi或者蜂窝数据接入互联网,在两个装有FaceTime的设备之间实现视频通话。其要求通话双方均具有装有FaceTime的苹果设备,苹果ID以及可接入互联网的3G/4G/5G或者Wi-Fi网络。 一、Windows电脑上部署苹......
  • Swift 优雅的 Enum
    声名EnumenumColor{staticfuncRGB(r:CGFloat,g:CGFloat,b:CGFloat)->UIColor?{UIColor(red:r/255.0,green:g/255.0,blue:b/255.0,alpha:1)}staticfuncRGBA(r:CGFloat,g:CGFloat,b:CGFloat,a:CGFloat)->UIColor?......
  • 搭建时空基底,建设“数字之城”
    在这个日新月异的时代,数字技术正以前所未有的速度重塑我们的世界。今天,让我们一同深入探讨如何通过搭建时空基底,为“数字之城”的建设奠定坚实基础。一、时空基底:数字之城的骨骼与脉络所谓“时空基底”,是指结合时间维度与空间维度的综合性信息框架,它是构建数字城......
  • Diskpart 操作
    DiskPart是Windows操作系统中的一个命令行工具,用于管理磁盘分区。它可以创建、删除、格式化和调整分区大小,还可以设置活动分区等。以下是一些常用的DiskPart命令和操作步骤。一、启动DiskPart打开命令提示符:按Win+R打开运行窗口,输入cmd并按回车。或者在开始菜......
  • 画一个圆形 极语言
    程序段窗体启动整数设备,刷子;设备=取设备(窗体);刷子=创建画刷($25022);选择对象(设备,蓝刷);画椭圆(设备,10,10,20,20);结束创建一个刷子,在画板上画出图形. 圆形就理解为正圆形了,正圆形其实就是宽度和高度相同的椭圆. 用设备这个变量存窗体的地址,用刷子......
  • 解决端口号占用问题:Spring Boot报错,Web server failed to start. Port 8080 was alrea
    报错信息:Webserverfailedtostart.Port8080wasalreadyinuse.报错原因:端口被占用解决方法:解决方法一:修改端口修改配置文件,加上参数:server.port=8014或者在application.yml文件中添加server:port:8014在访问时,替换对应的端口号即可解决方法二:关闭占用端口的......
  • SciTech-Mathematics-Probability+Statistics-5StatisticalConcepts:
    5StatisticalConceptsThatOftenConfuseBeginners(AndHowtoUnderstandThem)BYNAHLADAVIESPOSTEDONAUGUST6,20245StatisticalConceptsThatOftenConfuseBeginners(AndHowtoUnderstandThem)Statisticsisn'tjustformathematiciansorscie......