搜索
首页 电脑/网络 程序设计 C/C++

请问下面的两句话对不?为什么

1 定义函数时,形参的类型说明可以放在函数体内2 如果形参与实参的类型不一致,以实参类型为准请问这2句话分别是正确还是错误?为什么??

全部回答

2018-04-02

0 0
    两个都不对毫无疑问,楼上的兄弟说的没错。但是楼主没有指明是 C 还是 C++。如果是 C 按照老的标准还有一种老式定义法: void fun(a,b) int a; int b; { } 后来新的 C 标准出来后就推荐函数原型法,建议不用这种老式定义方式。
     另外 2 虽然是错的,但是上面 erosnick 说到"会触发编译错误"却不一定,无论是 C、C++ 都只是在某些少数情况下会出编译错误,多数情况下只是个警告,或者什么信息都没有,但却很可能出现运行时错误。
  比如需要个数字指针实参却传了数值进入,导致非法内存访问等。   。

2018-04-02

52 0
    这两句话都是不对的,解析如下: 1。定义一个函数,如下: void fun(int a, int b) // a,b即形参 { // 函数体内 } 函数体内指的是大括号内,根据C/C++以及类似语言的语法,形参类型说明是要紧跟在函数名后面的括号中。
   2。  实参指调用函数时传入的参数,如: int main() { fun(10, 20); // 10, 20即为实参。 return 0; } 如果实参和形参类型不一样,是会触发编译错误的。
  实际上编译器的判断是以形参为准。

类似问题换一批

热点推荐

热度TOP

相关推荐
加载中...

热点搜索 换一换

电脑/网络
C/C++
硬件
电脑装机
程序设计
互联网
操作系统/系统故障
笔记本电脑
反病毒
百度
软件
程序设计
C/C++
VB
数据库
汇编语言
JAVA相关
VC++
C#/.NET
其他编程语言
C/C++
C/C++
举报
举报原因(必选):
取消确定举报