zoukankan      html  css  js  c++  java
  • 10-函数的定义

    1、无参无返回值

    一般形式如下:

      void 函数名()

      {

      声明部分 //定义局部变量 语句

      }

        注意:函数定义完成后,不能自动执行,需要调用才可以执行

          void 无返回值函数:此类函数用于完成某项特定的处理任务,执行完后不向调用者返回执行结果,这类函数类似于其他语言的过程;由于函数无返回值,用户在定义此类函数时可指定其函数返回值为“空类型”。 void表示函数返回值为空。

    2、有参无返回值

    一般形式如下:

      void 函数名(形式参数列表)

      {

      声明部分语句

      }

      形式参列表的格式: 类型1 变量1,类型2 变量2,.......

    思考&实现1:

      打印图形的案例中,能否通过函数改进,实现输入一个数字N, 则打印N遍?

     1   #include <stdio.h>
     2 
     3   /*打印一条横线*/
     4   void printLine()
     5   {
     6       printf("_____________________
    ");
     7   }
     8 
     9   /*
    10   打印多条横线   int n 就是函数printManyLine的形式参数。
    11   */
    12 
    13   void printLineNum(int n)
    14 
    15   {
    16       for (int i=0; i<n; i++)
    17       {
    18         //每调用一次就打印1行横线
    19         print_line();
    20     }
    21 }
    22 
    23 int main()
    24 {
    25    printLine(2);
    26 return 0
    27 } 

    3、无参有返回值函数定义

    一般形式如下:

      返回值类型 函数名()

      {

      声明部分语句

      return   返回值类型变量或常量;

      //返回给主调函数

      }

         其中返回值类型和函数名称为函数头。
         返回值类型指明了本函数的返回值类型。函数名是由用户定义的标识符,函数名后有一个空括号,其中无参数,但括号不可少。{}中的内容称为函数体。在函数体中声明部分,是对函数体内部所用到的变量的类型说明。

    4、有参有返回值函数定义

    一般形式如下:

    返回值类型 函数名(形式参数列表)

    {

      声明部分语句

      return 返回值类型变量或常量;

     }

            有参函数比无参函数多了一个内容,即形式参数列表。在形参表中给出的参数称为形式参数,它们可以是各种类型的变量,各参数之间用逗号间隔。

    5、定义函数时注意函数名不能重复

    思考&实现2:

    1)通过函数实现求出两个数中的最大值的功能?

    方法一:

     1 int max(int a,int b)
     2 {
     3      if (a>b)
     4   {
     5        printf("最大值是 %d
    ",a);
     6   }
     7   else
     8   { 
     9        printf("最大值是 %d
    ",b);
    10    }
    11 } 

    方法二:

    1 int max(int a,int b)
    2 {
    3     return a>b?a:b;
    4 }

    2)分析函数形参底层存储原理

             形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。 因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。

    人生之路,不忘初心,勿忘始终!
  • 相关阅读:
    C#演练—Windows应用程序—在windows窗体上动态创建上下文菜单
    C#演练—Windows应用程序—可视化继承
    C#演练—Windows应用程序—创建主从windows窗体
    小胖IT大讲堂之三 Hook实战(二) SQL Monitor山寨版
    小胖的2011总结之回忆篇
    Oracle安装示例数据库
    《领域驱动设计》读书笔记(一) 分离领域
    小胖IT大讲堂之一 .NET Reflector工具介绍
    10年前我不是小胖,也是个“诗人”
    忘记
  • 原文地址:https://www.cnblogs.com/xdl745464047/p/4003556.html
Copyright © 2011-2022 走看看