C语言 指针 新手 秒回 请逐一回答我提出的三个问题 主要是基本概念第一种int *p1,*p2,*p,a,b;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 18:57:07
C语言 指针 新手 秒回 请逐一回答我提出的三个问题 主要是基本概念第一种int *p1,*p2,*p,a,b;scanf(

C语言 指针 新手 秒回 请逐一回答我提出的三个问题 主要是基本概念第一种int *p1,*p2,*p,a,b;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a
C语言 指针 新手 秒回 请逐一回答我提出的三个问题 主要是基本概念
第一种
int *p1,*p2,*p,a,b;
scanf("%d,%d",&a,&b);
p1=&a;p2=&b;
if(a

C语言 指针 新手 秒回 请逐一回答我提出的三个问题 主要是基本概念第一种int *p1,*p2,*p,a,b;scanf("%d,%d",&a,&b);p1=&a;p2=&b;if(a
问题一:这里的temp和P*的效果是不一样的,首先temp是变量而p是指针这个你要区别开
如果用temp=a;a=b;b=temp来进行计算,是交换变量a和变量b的值,而第一题里最后的指针变量的交换,你可以printf("%d %d",a,b);出来看一下,a,b的值是没有变的
问题二:这个是对函数的了解(推荐多去看看课本),函数基本格式:
例子:int swap(int x,char y,int* p_x)
第一个int是代表返回值的类型,
swap是函数的名
括号里面的是函数的形式参数,具体有多少个你自己来进行决定,但是要与你调用函数时,传入的参数的个数和类型一致才可以
在这里强调一下,函数的返回值,只有一个,不会出现多个返回值的情况,而问题二的swap函数中,用指针作为形参是一个可以像函数中传入数据和传出数据的应用,详细的看一下函数和指针方面的书籍