当前位置:首页 » 编程语言 » c语言结构体指针

c语言结构体指针

发布时间: 2022-01-18 14:24:30

‘壹’ c语言指针和结构体

楼主你好:
for(i=cnt;i>0;i--)
{/*P为临时结构体指针*/
p=(struct linklist *)malloc(sizeof(linklist));
scanf("%s%s%d",p->sno,p->sname,&p->sgrade);
p->next=ps->next;
ps->next=p;
}
你仔细看一下你的这段代码。
第一次循环的时候,p指向ps指向的地址,然后ps指向p,这样的结果是:ps--->p---->p->next
然后下一次循环,ps->next现在是p,你执行了“p->next=ps->next”那么p指向了p自己。。。而ps指向了p。在以后的循环中无法改变这一现象,从而造成了死循环,不知道你是不是能够明白,推荐你画一下图,画画就明白了。

还有最后的那个for循环,终止条件改为p=p->next,这个应该是粗心了吧?

看起来你是初学c,c中联表示比较难以理解的一部分,祝你好运,学业有成。

‘贰’ c语言结构体指针

error C2106: '=' : left operand must be l-value
这句的意思是等号左边必须是一个左值,也就是说等号左边要放一个能被修改的值
这样看来 pcg->name不能被修改 估计name是个数组,数组名是个常量,是不能被改变的
这样操作: strcpy(pcg->name,temp.qq);

热点内容
机房怎么用电脑连接服务器 发布:2024-11-15 12:52:24 浏览:561
删数据库事件 发布:2024-11-15 12:10:54 浏览:457
数据库选课管理系统 发布:2024-11-15 12:10:15 浏览:128
android音乐波形图 发布:2024-11-15 11:57:12 浏览:380
福建社保银行卡初始密码是多少 发布:2024-11-15 11:47:40 浏览:913
游戏多开用什么配置 发布:2024-11-15 11:46:51 浏览:731
管理java版本 发布:2024-11-15 11:44:03 浏览:631
ndk编译的程序如何执行 发布:2024-11-15 11:43:18 浏览:628
轻应用服务器适合搭建网站吗 发布:2024-11-15 11:36:08 浏览:248
c语言的百分号 发布:2024-11-15 11:34:24 浏览:33