当前位置:首页 » 编程语言 » 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);

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:577
制作脚本网站 发布:2025-10-20 08:17:34 浏览:868
python中的init方法 发布:2025-10-20 08:17:33 浏览:566
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:748
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:668
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:989
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:239
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:97
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:790
python股票数据获取 发布:2025-10-20 07:39:44 浏览:696