黑马程序员技术交流社区
标题:
大家来找茬之实参形参
[打印本页]
作者:
54hxd52lj
时间:
2014-6-5 19:59
标题:
大家来找茬之实参形参
本帖最后由 54hxd52lj 于 2014-6-6 08:50 编辑
void main( )
{
void swap(int,int);
int a,b;
a=3;b=4;
swap(a,b);
printf("%d,%d\n",a,b);
}
void swap(int x,int y)
{
int t;
t=x;x=y;y=t;
}
复制代码
作者:
张家伟2014
时间:
2014-6-5 21:50
本帖最后由 张家伟2014 于 2014-6-7 20:46 编辑
一、01行错误:main函数返回值为int,修正如下:
int main()
复制代码
二、07行错误:printf函数未声明,printf函数声明在stdio.h中,修正如下:在01行前添加下列代码
#include <stdio.h>
复制代码
三、语义错误:函数本意应该是交换变量a和b的值,但实际上只交换了变量x和y的值。因为基本数据类型作为函数实参时,只是将值传递给形参,所以形参的改变并不影响实参,修正如下:
#include <stdio.h>
int main()
{
void swap(int*, int*);
int a,b;
a = 3;
b = 4;
swap(&a, &b);
printf("a = %d, b = %d\n",a,b);
}
void swap(int *x, int *y)
{
int t;
t = *x;
*x = *y;
*y = t;
}
复制代码
作者:
bubuatt
时间:
2014-6-5 22:07
感谢分享~
作者:
54hxd52lj
时间:
2014-6-5 22:21
张家伟2014 发表于 2014-6-5 21:50
01行错误:main函数返回值修正:01行改写成 int main()
07行错误:printf函数未声明修正:01行前添加#incl ...
真是太感谢了,找茬达人。:handshake
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2