鱼C论坛

 找回密码
 立即注册
查看: 1188|回复: 5

比较两个数的大小

[复制链接]
发表于 2016-1-7 22:13:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
int *pointer_1;
int *pointer_2;
int swap(int *pointer_1,int *pointer_2);
void main()
{
      
      int a,b;
      scanf("%d %d",&a,&b);
      pointer_1 = &a;
      pointer_2 = &b;
      
      if(a < b)
      {
            swap(pointer_1,pointer_2);  //这里为什么不能写成swap(int *pointer_1,int *pointer_2),写成这样就会报错,求各个大大帮忙解释下。
            
      }
      printf("%d > %d\n",a,b);

}

int swap(int *pointer_1,int *pointer_2)
{
      int temp;
      temp = *pointer_1;
      *pointer_1 = *pointer_2;
      *pointer_2 = temp;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-1-7 23:20:31 | 显示全部楼层
pointer_1
pointer_2
是已经定义过了的,注意这里是函数调用,调用的时候没有swap(int *pointer_1,int *pointer_2)这种格式
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-8 10:33:18 | 显示全部楼层
麦田管理中心 发表于 2016-1-7 23:20
pointer_1
pointer_2
是已经定义过了的,注意这里是函数调用,调用的时候没有swap(int *pointer_1,int *p ...

哦,原来是这样啊,谢谢啦。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-1-8 13:11:53 | 显示全部楼层
swap(pointer_1,pointer_2)
你定义的是函数指针,引用的时候传入的必须是地址;
写成这样swap(*pointer_1,*pointer_2)传入的就不是地址了而是传值了,* pointer是取它存放着的地址中的值了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-8 14:05:25 | 显示全部楼层
jchao288195 发表于 2016-1-8 13:11
swap(pointer_1,pointer_2)
你定义的是函数指针,引用的时候传入的必须是地址;
写成这样swap(*pointer ...

谢谢,你的回答,让我更加了解了一点。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-1-8 21:55:16 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 18:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表