如何在没有头/尾指针的情况下将多个节点添加到C中的链表?

蓝天

我有一个带有患者列表的多层链接列表,每个患者列表都指向一个包含患者的链接列表,每个患者都指向一个医生的链接列表。我试图添加多个医生,但是当我尝试显示医生时,我得到一个无限循环,好像没有指向NULL的下一个指针一样。如果只有一位医生,那么一切都会很好。

我尝试了多种方法,例如将旧节点设置为临时指针,然后将新节点设置为指向临时指针。我的患者列表链接列表和患者链接列表工作100%。

struct doctor {
char name[MAX_NAME];
struct doctor *next;
};
void addDoctor(char* patientNameInput, char* doctorNameInput)
{
struct patientList* tempList = list;   // work on a copy of 'list'
int i = 0;

struct doctor* newDoctorNode = NULL;
newDoctorNode = (struct doctor*) malloc(sizeof(struct doctor));
struct doctor* tmp = NULL;

while (tempList != NULL)
{
    while (tempList->patient->name[i] == patientNameInput[i])
    {
        if (tempList->patient->name[i] == '\0')
        {
            tempList->patient->doctors = newDoctorNode;
            newDoctorNode->next = NULL;

        for (int i = 0; i < 30; i++)
        tempList->patient->doctors->name[i] = doctorNameInput[i];
        }
        i++;
    }
    tempList = tempList->next;
}

}

该功能搜索患者姓名和相应的患者列表链接列表。找到后,它将为相应的患者添加医生节点。如果我包括旧的临时指针尝试并显示该函数,则将得到一个无限循环。我希望输出结果能够显示1位以上的医生,并且没有错误。

汤姆·卡兹斯

更改以下内容:

        tempList->patient->doctors = newDoctorNode;
        newDoctorNode->next = NULL;

至:

        newDoctorNode->next = tempList->patient->doctors;
        tempList->patient->doctors = newDoctorNode;

这会将新的医生节点添加到现有医生列表的前面。如果您想将其添加到末尾,则需要遍历列表以找到末尾。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在没有HttpClientFactory的情况下将多个HttpMessageHandler添加到HttpClient

来自分类Dev

如何在没有jQuery的情况下将ahref添加到li中?

来自分类Dev

如何在没有多余空格的情况下将mailto添加到句子?

来自分类Dev

如何在Python中没有标题的情况下将图例添加到CSV数据图中?

来自分类Dev

如何在不使用JLabel的情况下将背景图像添加到没有面板的JFrame中?

来自分类Dev

如何在没有类别控制器的情况下将类别添加到Rails中的帖子

来自分类Dev

在实体框架中,如何在没有枚举所有可能的DbSet的switch语句的情况下将通用实体添加到其对应的DbSet中?

来自分类Dev

如何在没有xmlns / idQ的情况下将组添加到(VBA)自定义功能区?

来自分类Dev

如何在没有拦截器的情况下将头添加到Soap Fault

来自分类Dev

如何在没有StoryBoard的情况下以编程方式将单元格添加到UICollectionView

来自分类Dev

如何在没有npm的cordova cli的情况下将外部/外部插件添加到pgb?

来自分类Dev

如何在没有完整路径的情况下将值添加到JSON数组?

来自分类Dev

如何在没有gemspec的情况下使用Gemfile将'lib'添加到LOAD_PATH?

来自分类Dev

如何在没有xmlns / idQ的情况下将组添加到(VBA)自定义功能区?

来自分类Dev

如何在没有3party库的情况下将SPNEGO身份验证添加到servlet

来自分类Dev

如何在没有'new'的情况下将新对象实例添加到std :: list

来自分类Dev

如何在没有npm的cordova cli的情况下将外部/外部插件添加到pgb?

来自分类Dev

如何在没有互联网的情况下使用按钮将图像项添加到 RecyclerView?

来自分类Dev

如何在没有 .xml 和资源的情况下将字符串添加到微调器

来自分类Dev

如何在没有自定义类的情况下将 UILabel 添加到 UICollectionViewCell?

来自分类Dev

如何在不触发多个摘要周期的情况下将项目添加到数组中并使其显示在顶部?

来自分类Dev

如何在没有usermod的情况下将用户添加到组?

来自分类Dev

如何在没有转换错误的情况下添加到新的 ArrayList?

来自分类Dev

如何在没有属性构造函数的情况下将值添加到动态添加到属性的属性(Reflection.Emit)

来自分类Dev

在Express中没有模板引擎的情况下将值添加到HTML吗?

来自分类Dev

如何在不重复的情况下将模型添加到集合中?

来自分类Dev

如何在不复制对象的情况下将var添加到Python列表中?

来自分类Dev

在没有Jquery的情况下将Click事件添加到动态添加的列表项中

来自分类Dev

如何在C中没有指针的情况下检索超出范围的静态值?

Related 相关文章

  1. 1

    如何在没有HttpClientFactory的情况下将多个HttpMessageHandler添加到HttpClient

  2. 2

    如何在没有jQuery的情况下将ahref添加到li中?

  3. 3

    如何在没有多余空格的情况下将mailto添加到句子?

  4. 4

    如何在Python中没有标题的情况下将图例添加到CSV数据图中?

  5. 5

    如何在不使用JLabel的情况下将背景图像添加到没有面板的JFrame中?

  6. 6

    如何在没有类别控制器的情况下将类别添加到Rails中的帖子

  7. 7

    在实体框架中,如何在没有枚举所有可能的DbSet的switch语句的情况下将通用实体添加到其对应的DbSet中?

  8. 8

    如何在没有xmlns / idQ的情况下将组添加到(VBA)自定义功能区?

  9. 9

    如何在没有拦截器的情况下将头添加到Soap Fault

  10. 10

    如何在没有StoryBoard的情况下以编程方式将单元格添加到UICollectionView

  11. 11

    如何在没有npm的cordova cli的情况下将外部/外部插件添加到pgb?

  12. 12

    如何在没有完整路径的情况下将值添加到JSON数组?

  13. 13

    如何在没有gemspec的情况下使用Gemfile将'lib'添加到LOAD_PATH?

  14. 14

    如何在没有xmlns / idQ的情况下将组添加到(VBA)自定义功能区?

  15. 15

    如何在没有3party库的情况下将SPNEGO身份验证添加到servlet

  16. 16

    如何在没有'new'的情况下将新对象实例添加到std :: list

  17. 17

    如何在没有npm的cordova cli的情况下将外部/外部插件添加到pgb?

  18. 18

    如何在没有互联网的情况下使用按钮将图像项添加到 RecyclerView?

  19. 19

    如何在没有 .xml 和资源的情况下将字符串添加到微调器

  20. 20

    如何在没有自定义类的情况下将 UILabel 添加到 UICollectionViewCell?

  21. 21

    如何在不触发多个摘要周期的情况下将项目添加到数组中并使其显示在顶部?

  22. 22

    如何在没有usermod的情况下将用户添加到组?

  23. 23

    如何在没有转换错误的情况下添加到新的 ArrayList?

  24. 24

    如何在没有属性构造函数的情况下将值添加到动态添加到属性的属性(Reflection.Emit)

  25. 25

    在Express中没有模板引擎的情况下将值添加到HTML吗?

  26. 26

    如何在不重复的情况下将模型添加到集合中?

  27. 27

    如何在不复制对象的情况下将var添加到Python列表中?

  28. 28

    在没有Jquery的情况下将Click事件添加到动态添加的列表项中

  29. 29

    如何在C中没有指针的情况下检索超出范围的静态值?

热门标签

归档