- 论坛徽章:
- 0
|
在程序中定义了一个结构体struct node,然后用他定义变量,但是在编译时出现一些警告和错误,下面是源码和编译出错的结果的一部分:
#include "../unp.h"
static void *doit(void *arg);
typedef struct node
{
int sockfd;
struct node *next;
}Node;
pthread_rwlock_t lock = PTHREAD_RWLOCK_INITIALIZER;
Node *p, *q, *hd;
hd = (Node *)malloc(sizeof(struct node)); //14行
hd->next = NULL;
p = hd;
chatserv.c:14: 警告:数据定义时没有类型或存储类
chatserv.c:14: 错误:与‘hd’类型冲突
chatserv.c:13: 附注:‘hd’的上一个声明在此
chatserv.c:14: 警告:初始化将指针赋给整数,未作类型转换
chatserv.c:14: 错误:初始值设定元素不是常量
chatserv.c:15: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘->’ token
chatserv.c:16: 警告:数据定义时没有类型或存储类
chatserv.c:16: 错误:与‘p’类型冲突
chatserv.c:13: 附注:‘p’的上一个声明在此
chatserv.c:16: 错误:初始值设定元素不是常量
希望大神解救,不知道错在哪里了?谢谢! |
|