函数参数类型归纳

一、实参类型与形参类型不匹配时,实参类型自动转化为形参类型

Return 语句 返回数据的类型 与 函数类型 不匹配时,自动转化为函数的类型

         函数声明:

                   事先通知编译系统,可以不写形参名。

                   float  add(float, float);

二、Skills

编程时把main函数写到最前,每次需调用函数时都要写 函数原型 来声明函数。

例如如此声明函数: void swap(int, int);

三、关于参数的类型

    指针作为函数参数        

                 声明时:void swap(int *p1, int *p2);

                                               调用时: swap(pointer_1, pointer_2);

    一维数组地址 作函数参数,用指针变量去接受或者用数组接收    

                  声明时:void swap(int a[]);或者 void swap(int *a);

                                                调用时: swap(a);   //a为数组名

    多维数组名作函数参数时,用指向一维数组的指针变量接收或多维数组接受

              声明时:void swap(int a[ ][n ]);或者 void swap( int (*p) [ n] );  

                                               //n为具体数组的列数,必须要指定

              调用时: swap(a);     //a为二维数组名

                                       二维数组a[5][6]; 其中 a == &a[0]  a[0] == &a[0][0]

                                       a[1] == &a[1][0]  a[2] == &a[2][0] ……  //原则:数组名为首元

                                       地址 a 和 a[n],(n=1,2,……) 同样适用。

    函数指针作参数

                 声明时:void swap(double (*p)(int,int );

                                               调用时: swap(f); //只需传参数名(函数入口地址),不需

                                                                  //传函数的参数。其中f为函数名    p188 /c++ /谭

                                               区别以下两者的差别:

                                                        void *swap(int,int);

                                                        void (*swap)(int,int);

                                                        前者是声明一个函数swap,返回值为指向void类型的指针

                                                        后者是声明一个指向函数的指针,这个指针是 swap  

                    //参考p187/c++谭

    引用作为函数参数

                  声明时:void swap(int &, int &);  //参考p194/c++谭

                                               调用时: swap(i, j);    //i,j可以是变量也可以是引用类型

    结构体类型变量作参数

                  声明时:void swap(struct student stu1);

                                                调用时: swap(stu);//stu是结构体student的一个变量

    类对象作参数

                  声明时:void swap(student stu1);//student是一个以定义的类

                                                调用时: swap(stu); //stu是类student 一个对象

四、定义字符指针

            Char *str = “I Love China”;  //str是指针,系统将首元素I的地址

                                     //给str。当然在字符串后面自动加‘\0’

原文链接: https://www.cnblogs.com/jnje/archive/2011/03/11/1981901.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    函数参数类型归纳

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/22211

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月8日 上午12:08
下一篇 2023年2月8日 上午12:09

相关推荐