找回密码
 立即注册
收起左侧

c语言链表输出?????help

2
回复
7989
查看
[复制链接]
累计签到:168 天
连续签到:1 天
来源: 2013-10-18 08:57:14 显示全部楼层 |阅读模式
1Qter豆
struct student *create(int n){    struct student *pHead,*pNOW,*pNEW;    pHead = (struct student *)malloc(sizeof(struct student));    if(pHead == NULL)    {        printf("applay room false\n");        exit(1);//结束程序    }    pHead->next = NULL;    char headname[20 = "cll";    strcpy(pHead->name,headname);
    pNOW = pHead;    int i;    for(i = 0;i<n;i++)    {        pNEW = (struct student *)malloc(sizeof(struct student));        pNEW->next = pNOW->next;        printf("put in student [%d] name\n",i+1);        scanf("%s",pNEW->name);           //输入       // char newName[20];//        scanf("%s",newName);//        strcpy(pNEW->name,newName);        pNOW->next = pNEW;        pNOW = pNEW;
    }    printf(" create list over\n");    for(i = 0;i<=n;i++)    {        printf("%s\n",(pHead+i)->name);//这个地方想把刚才输入的书出来    }    return pHead;}

为什么输出的不是我刚刚输入的字符串?前面变成&(pHead+i)->name),输出不变,,,但是第一个输出的是cll,这个是正确的???难道是我输入错了吗

最佳答案

查看完整内容

看见你好像现在一直在Qt里面写C程序,不是不可以,只是想说的是,Qt对C++支持会好一些。或者说,如果不是特别需要,那么,一般在高级程序中,数组、链表等都可以通过容器类来实现,使用容器很方便,不需要操作复杂的结构体或者指针,可以避免很多不必要的麻烦。 还有要说的就是,这里大多探讨的是Qt的问题,所以你发的很多C的问题,可能得不到及时的回答,建议去一些C语言的论坛区发帖讨论。 ...
回复

使用道具 举报

累计签到:1571 天
连续签到:1 天
2013-10-18 08:57:15 显示全部楼层
看见你好像现在一直在Qt里面写C程序,不是不可以,只是想说的是,Qt对C++支持会好一些。或者说,如果不是特别需要,那么,一般在高级程序中,数组、链表等都可以通过容器类来实现,使用容器很方便,不需要操作复杂的结构体或者指针,可以避免很多不必要的麻烦。

还有要说的就是,这里大多探讨的是Qt的问题,所以你发的很多C的问题,可能得不到及时的回答,建议去一些C语言的论坛区发帖讨论。
回复

使用道具 举报

累计签到:168 天
连续签到:1 天
2013-10-19 10:10:57 显示全部楼层
yafeilinux 发表于 2013-10-18 22:53
看见你好像现在一直在Qt里面写C程序,不是不可以,只是想说的是,Qt对C++支持会好一些。或者说,如果不是特 ...

嗯嗯,我是暂时的小作业,用qt写c程序,有些我觉得是qt编译器的原因,顺便问问,呵呵呵,谢谢老师的建议
回复

使用道具 举报

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

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了