调用函数不是再次声明

今天犯了个十分低级的错误:

#include
using namespace std;
int a = 1, b = 2;
void swap(int a, int b);
//pass by value
void swap(int a, int b)
{
int temp;
temp = a;
a = b;
b = temp;
cout << “a” << a << " b" << b << endl;
}
void main()
{
void swap(int a ,int b);
}

源代码为以上,运行不出结果,于是把swap函数的定义体注释掉,将定义体内的内容粘贴到main函数中,发现可以成功输出相关内容,故排除定义体内代码错误的可能。最后发现原来是在main函数中调用swap函数时,又一次加了其返回值类型,参数类型。
遂得结论:
在主函数中调用函数,不能加函数返回值类型及参数类型,格式为:函数名(参数1,参数2).否则将认为是在main函数内进行二次声明,无实际意义,不能得到输出结果。
更正main函数后:

void main()
{
swap(a,b);
}

于是得到正确输出结果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值