zoukankan      html  css  js  c++  java
  • 【C语言】基础(七)函数

    函数

    概念:把一些大的或者功能相同的程序分成一个个程序块
    函数是构成程序的基本单元
    函数的使用可以省去重复代码的编写
    函数可以使程序更加模块化,提高程序可读性


    根据函数的定义方式可分为:
    库函数 用户自定义函数 C++纯自定义函数 java纯库函数,效率高,直接应用 OC两者之间,倾向JAVA

    根据是否有参数可分为:
    有参函数 无参函数

    根据是否有返回值可分为:
    有返回值函数 无返回值函数


    不能在函数内部定义函数

    允许嵌套调用

    允许递归调用(调用自身)

    函数声明和函数体称为定义

    函数的定义
    1.正常的函数定义(无返回值类型写着,默认为Int)
    返回值类型说明 函数名 (参数1类型 参数1 ,参数2类型 参数二,……)
    基本数据类型,空类型,表示没有(void)
    int func1(int a)

    return a + 1;

    int func2(int a,int b);(声明要分号,定义不需要分号)(定义在后面时,提前声明)

    2.无返回值有参数的函数定义
    void 函数名(参数类别)


    3.有返回值无参数
    返回值类型说明 函数名()


    返回值会强行转换

    函数大写开头(规范)


    实际参数 实参
    形式参数 形参(要求为变量)

    sum(int a,int b);定义函数时形参未分配内存;调用函数时分配内存

    函数调用结束以后,形参变量的内存会被释放

    return;结束后即释放,无返回不需要写

    实参与形参占据不同的存储单元

    实参的值单项传递给形参,形参不会改变实参的值

    函数栈
    每个函数栈相互独立,内部变量只能在函数内访问,不能跨栈访问



    主调函数 被调函数
    即使函数没有参数,括号也不能省略
    func1();




    return 0;是编译器跟操作系统的一个约定。表示函数正常结束

    函数内部,return 可代替 break 直接挑出函数
    return之后的语句永远不会执行



    函数与数组

    1.数组元素作为实参传递,普通变量
    2.数组名作为实参传递
    数组名就是数组的首地址
    传递数组名时,会将数组的首地址进行传递


    数组首地址:数组的第一个元素的地址




    函数递归(有一个已知条件,终止条件)

    在一个函数中,直接或间接调用函数本身

  • 相关阅读:
    用fnmatch函数进行字符通配
    activity和service之间的相互通信方法
    IGMP协议简介
    Android2.2快速入门
    Android开发之旅:HelloWorld项目的目录结构
    Android的五大基本组件
    Android Service 组件
    TCP交互数据流 成块数据流
    为什么要进行IP选路?
    embOS实时操作系统 任务通讯
  • 原文地址:https://www.cnblogs.com/yujiamin/p/7301343.html
Copyright © 2011-2022 走看看