函数参数类型归纳

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

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值