Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1547539
  • 博文数量: 596
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 173
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-06 15:50
个人简介

在线笔记

文章分类

全部博文(596)

文章存档

2016年(1)

2015年(104)

2014年(228)

2013年(226)

2012年(26)

2011年(11)

分类: LINUX

2013-12-14 21:31:15

引用的指针没有数据类型

  1. // file: parser.c

  2. typedef struct Parser {
  3.   int id;
  4.   void *data;
  5. }Parser;

在其它文件引用该结构,也包含了该头文件parser.h
  1. // file: audio.c
  2. #include "parser.h"
Parser *audio = (Parser *)malloc(sizeof(Parser));
audio->id = 0;    //dereferencing pointer to incomplete type


看清楚,一切都是那么顺利,没有异常,还引用了头文件。
错就错在,Parser的结构定义在parser.c,而不是parser.h,包含还是照样出错。

想用的话,
1. 导出接口

  1. // file: parser.c
void parser_set_id(int id);

2. 结构体定义挪到parser.h
阅读(617) | 评论(0) | 转发(0) |
0

上一篇:ECLIPSE 小计

下一篇:如何看懂一个函数

给主人留下些什么吧!~~