c - C套接字编程中不兼容的指针类型转换警告

标签 c pointers

list *attachnode(list *tmp,list *hd)//function to get the ip address
{
   if(hd==NULL)       
   {
            hd=tmp;
   }
   else
   {
            tmp->next=hd;               
            hd=tmp;
   }
   return(hd);
}

tmp->next=hd 默认给出不兼容类型指针转换的警告 “下一个”是列表类型。

最佳答案

你说“下一个”是“列表类型”,但我相信它应该是“列表*”类型

但是如果没有您的 typedef,我们无法确定

好的,你的评论,我的编辑:

它应该是typedef struct list {...;结构列表 *next;} 列表;

原因是,C确实需要前向声明,否则它无法确定next的“类型”。可视化:typedef struct {xxx *next;} yyy;

关于c - C套接字编程中不兼容的指针类型转换警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19212483/

相关文章:

C - 使用 strtok 按分隔符 "mv <from> <to>"拆分字符串 "/"

c - 内存分配优化 : from heap to stack

pointers - Fortran 指针赋值可以通过类型绑定(bind)的泛型过程重载吗?

创建二维结构

c - Eclipse C/C++ 无法运行程序

c - PAM 模块错误(传递 ‘snprintf’ 的参数 1 会丢弃 ‘const’ )

ios - 为什么对象有一个指针而不是一个整数?

将指针地址转换为 char 数组并使其成为小端

c - 如何在 C 中检查 char 数组的前两个字符?

c - 使用顺序 bbp 计算 pi 时丢失精度(使用 GMP)