求问下大神,C语言指针问题,大神大神,赐教啊,关于C语言指针问题。

2020-12-11 21:07:00 字数 3423 阅读 4735

1楼:阳光的雷咩咩

从声明可知l本身是指针类型,整个函数都是对l为头结点的链表做操作

要从函数内部改变函数参数的值,一般要用指针,这也就是为何initlist要用二级指针的原因。这个值得深入理解,我认为真正的难点在这里。(而不是后面传l为何起作用,这是你问的地方)

2楼:匿名用户

不太明白你说的啥, 能简要说一下吗?

大神大神,赐教啊,关于c语言指针问题。

3楼:

void fun (char *a,char *b)

所以,最后答案应该是打印出:ab

4楼:匿名用户

a=b是不会改变c1,baic2的值,只有(*a)++修改du了c2的值,

void fun (char *a,char *b)main ()

5楼:程序猿3号

这个。。没仔细看,上面有fun函数。

c语言指针的指针问题,求助大神!

6楼:匿名用户

#include

#include

struct a

;void fun1(struct a** val)int main()

来个大神说一下c语言指针问题!

7楼:自我编程

其实指针也是变量 你可以把 char * 合在一起看 和 char一样都是类型而已

关键区别指针里面放的值是 地址

而函数运行时使用的始终是自己的形参

那么这样看 第一题 是把变量 p,q的值传给个形参 x,y之后函数将x,y的值作为地址把里面的数值进行了交换(也就是把p,q指向的地址值交换了)

第二题 同样是 是把变量 p,q的值传给个形参 x,y区别是函数 直接将x,y的值进行了交换,而这个操作对实参p,q没有影响

8楼:ru恶魔猎手

第一题中的

fun函数,两个参数为指向char型变量的指针,t是一个char型变量,*x,*y就是对应地址中的值,所以交换的是值。故输出为1bc a23

第二题中的fun函数,两个参数同样为指向char型变量的指针,t是一个char型变量的指针,x,y就是指针指向的地址,所以交换的是地址。故输出为two one

9楼:欧瑞拉颜值

可以去stack overflow问问

c语言问题,求大神,指针的题目

10楼:匿名用户

#include

#definelen(100)

char*reverse(char*consts);

char*upper(char*consts);

intmain(void)

return0;

}char*reverse(char*consts)p++;

}returns;}

11楼:匿名用户

#include

#include

#include

intmain()

elseif(chose=='b')

else

printf("楼主给好评哦!结果是=%s\n",str);

system("pause");}

c语言指针问题求大神!

12楼:灰洋洋与喜汰郎

第一个函数的两个指针是局部变量,函数完了就销毁了,换不换都一样,第二个是直接操作指针指向的地方(内存单元),也就是直接操作变量。不恰当的比方,好比停车,有个图纸记录了每个车位停的什么车,第一个就相当于另外拿了个图纸画了一下想要的位置,原来的图没变,函数结束后来的图被扔了,原来的图保留着,实际的车并没动,第二个函数就是直接把车开到想要它停的位置

13楼:网际飞蚁

你对指针的理解有问题

第一个函数swap执行前pointer_1=&a,pointer_2=&b;

第一个函数swap执行后将pointer_1和pointer_2指向修改了一下结果是pointer_1=&b,pointer_2=&a,也是交换过你输出时需要输出*pointer_1和*pointer_2就对了;

第二个函数swap执行前pointer_1=&a,pointer_2=&b;

第二个函数swap执行后将pointer_1和pointer_2指向没有改但内容修改了*pointer_1=a=9,*pointer_2=b=5;

也就是说第一个函数通过修改指针指向完成数据交换,第二个函数通过修改指针所指变量的内容完成数据交换,其实都能对只不过你主程序输出时要有区别就ok了!!

关于c语言指针问题,求大神!

14楼:△▲咖啡

第一个函数的两个指针是局部变量,函数完了就销毁了,换不换都一样,第二个是直接操作指针指向的地方(内存单元),也就是直接操作变量。不恰当的比方,好比停车,有个图纸记录了每个车位停的什么车,第一个就相当于另外拿了个图纸画了一下想要的位置,原来的图没变,函数结束后来的图被扔了,原来的图保留着,实际的车并没动,第二个函数就是直接把车开到想要它停的位置

请采纳。

15楼:匿名用户

假设有以下等式

pre_p = p++

post_p = ++p

xp = *p

则:++(*p) *****== ++xp*(++p) *****== *post_p(*p)++ *****== xp++

*(p++) *****== *pre_p*****== 等效的意思

如果不太懂单独的 *p p++ ++p,那需要重新学习一下指针的含义了。

求教下下c语言大神,这个题问题出在哪?

16楼:enjoy慢慢滴

stt()定义有问题,bai

你是想返回一du个指针

所以应该是zhistruct student *stt();

在main函数中,dao你想用版p来存返回值,所以应该是权struct student *p;

p=stt();

这个地方:

p1=p2=(struct student *)malloc(len);

n=0;

scanf("%d",p1->num);

p1=p2=(struct student *)malloc(len);

n=0;

scanf("%d",p1->num);

相同的句子为什么要写两次呢?没看懂你想干什么

17楼:匿名用户

void main()

c语言中的指针问题,求解答,C语言中的指针问题,求解答

1楼 匿名用户 好像有点多此一举,直接使用rsnum就可以了。rsnum 就是数组的首地址了。 如果一定要用指针就是要申明一个指针来赋值。 c语言指针问题,求解答 2楼 伤我中国心 1, 是取值运算符,因为你要判断tt的值的情况,所以要用 2,tt 相当于 tt tt 1 这个是指针向后移动,不需要...

求大神,简单的C语言问题,求大神,一个简单的C语言问题

1楼 匿名用户 func的参数输入就是定义一个新的变量b 再将a赋值到b a的值不会变 好比执行了int b a 所以函数输出 12 y 2楼 听不清啊 程序运行后会输出 12 y c语言中实参到形参都是单向值传递的。 3楼 飘遥舞者 参数传递知识,取值传值方式不会改变原变量的值 求大神帮编写一个简...

C语言,求大神指教,c语言,求大神指教

1楼 t君凡 include include int ss int n else x 1 return x main else break 要判断最后一个数时要嗯空格后回车 2楼 匿名用户 问题好像不少 首先,你的ss函数中的x缺少初值,这样在n 3的时候会出bug,返回随机数 其次,你在发现一个数...