重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#include stdio.h
作为一家“创意+整合+营销”的成都网站建设机构,我们在业内良好的客户口碑。创新互联提供从前期的网站品牌分析策划、网站设计、做网站、成都网站设计、创意表现、网页制作、系统开发以及后续网站营销运营等一系列服务,帮助企业打造创新的互联网品牌经营模式与有效的网络营销方法,创造更大的价值。
int *fmax(int *,int *); /*函数的声明和下面的定义参数类型不一致,应该改成指针类型*/
void main()
{
int x,y;int *c,*d;
int *pmax;
scanf("%d%d",x,y);
c=x;
d=y;
pmax=fmax(c,d);
printf("max=%d\n",*pmax);
printf("max=%d\n",*pmax);
}
int *fmax(int *a,int *b)
{
int *p;
p=*a*b?a:b;
return p;
}
改成下面代码看看:
#include stdio.h
void abc(int *i,int *j)
{
int m;
m=*i; //指针变量的值也就是地址不能赋值给一般变量
*i=*j;//*i,*j才是指针变量指向的变量的值
*j=m;
}
void main()
{
int a,b;
int *pa=a,*pb=b;
printf("请输入a,b的值:");
scanf("%d,%d",a,b);
abc(pa,pb); //
printf("a=%d\tb=%d\n",a,b);
}
没有任何错误啊!
p1,p2本来就是int*类型的,swap参数也是int*类型的, if(ab) swap(p1,p2);这一句没错啊!swap本来就需要指针变量,p1,p2正好又是指针变量,直接写上去就可以了!
swap() 中是 int *p1 和int *p2这是因为这是swap的定义,既然是定义就要声明参数的类型,这里声明的是int*类型,那使用的时候就要传递int*类型的。主函数里的类型也是int*,对应上了,就可以了。
在定义变量的时候,建议你把*和数据类型当做一个整体,看成一种新的数据类型,不要把*和变量看做一个整体。比如int* p,int*是一个数据类型,p是变量名。
void fun(char *c,int d)
使用指针作为参数时,指针变量c指向了变量b,当c变化时,b也会变化。这里*c=*c+1,是*c由a变为b。
第二个参数d变化时,a并不会变化。
%e是一种转换说明符号,表示浮点数,并且采用e计数法。
比如2.12e2