C 返回指针的函数


  1、返回指针的函数——函数中通过return返回指针类型的数据。

 

 

  2、返回指针的函数定义格式:

     

     数据类型 * 函数名(参数表)

     {

        代码1;

        代码n;

        return 指针变量;

     }

 

      格式分析:

    (1)数据类型:就是前面我们学习函数定义时的类型:整型int,浮点型float,字符型char。

    (2)"*" 说明返回的类型是指针。

    (3)函数名(参数表){}与前面学习函数定义的格式是一样的。

    (4)一定要加入return语句,同时,return语句后面是要返回“指针变量”。

 

  

   3、例子:

        int *test(int *p)

        {

         *p = *p + 1;

         return p;

        }

 

        void main()

        {

          int a=1;

          int *b;

          

          b = test(&a);

        }

 

例子分析:

(1)首先,定义了函数test,返回类型是整形的指针类型,参数部分定义了整型的指针变量p作为形参。

(2)main函数中定义了整型变量a并赋初值1,然后,再定义了整型指针变量b。

(3)调用了函数test,而实参部分就通过&运算符取出a在内存中的地址,传递到形参p。

(4)然后,在test函数中,首先执行*p+1,而当前的p指向a的内存地址,所以*p就取出了1,因为,a在内存中的起始地址对应的单元值是1,然后,就是1+1结果等于2,并保存回p所指向的内存单中,所以,a中的值由1变为2。

(5)然后,执行return p,就是返回p指向的内存地址。

(6)然后,当test调用完毕以后,就把返回的内存址赋给指针变量b,所以,b就指向了a的内存地址。

 

 

   

   非常好,现在,我们已经掌握了C中的“返回指针的函数”这个知识点,但是,如何去运行用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用“返回指针的函数”去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”

 

      不要停留在理论规则上面,快动起来吧!

 

(通过游戏模式学习与训练,需要在电脑上运行)

进入游戏学习与训练