论坛风格切换切换到宽版
  • 662阅读
  • 2回复

ubuntu9.10 编译出错 [复制链接]

上一主题 下一主题
 

发帖
2242
C币
-553427
威望
419
贡献值
2
银元
0
铜钱
4762
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-04-27
现在学习C面向对象编程。编译代.码出现main.c:9: undefined reference to `.Set'             电子
代码如下:
new.h

#ifndef NEW_H
#define NEW_H
void * new(con.st void * t.ype, ...);.
void * ..delete(void * item);
#endif

object.h

#ifn.def OBJECT_H(        游戏          )
#defin.e OBJECT_H外贸
e.xtern cons.t void * Object;<性病>
int differ(cons.t voi.d * a, const void * b);    外汇
#endif

set.h

#ifndef SET_H
#define SET_H
e.xtern const void * Set;    外汇
void *. add .(void * set, const void * element);.
void * find (const void *. set, const .void * element);.
void * drop. (void * set., const void * element);健康
#endif

main.c

#inclu.de <stdio.h>

#inc.lude "new.h".
#include "o.bject.h"教育
#.include "set.h"            杀毒

int main()
  {
    void * s = .new(Set);健康
    voi.d * a = .add(s, new(Object));    美容
    void * b = ad.d(s, ne.w(Object));--- 印刷
    void * c .= new(.Object);教育

.   if(contains(s, a) && contains(s,. b)).
.     puts("ok");虚拟主机
    if(con.tains(s, c))教育
      p.uts("contains?");             电子
.   if(dif.fer(a, add(s, a)))          婚庆
      puts.("differ?");<性病>
    if(cont.ains(.s, drop(s, a)))             汽车
.     puts("drop?");电脑

    delete(drop(s, .b));电影
    del.ete(drop(s, c));.

    return 0;
  }

用以下命令编译:
gcc -g main.c -o .main.
出现下面错误:
/home/aaron/Sou.rce/c-code./main.c:9: undefined reference to `Set'              乙肝
/h.ome/aaron/Source/c-code/main.c:9.: undefined reference to `new'(        游戏          )
/home/aa.ron./Source/c-code/main.c:10: undefined reference to `Object'.
~/So.urce/c-code/ma.in.c:10: undefined reference to `new'<性病>
~/Source/c-code/main.c:10: undef.ined reference .to `add'    健康
~/Source/c-code/main..c:11: undefined refer.ence to `Object'          婚庆
~/Source/c-code/main.c:.11:. undefined reference to `new'.
~/Source/c-code/main.c:11: und.efined reference to `add'.域名
~/Source/c-code/main.c:12: undefined reference to `Object..'          婚庆
~/Source/c-code/main.c:12: undefi.ned reference. to `new'    美容
~/S.ource/c-code/main.c:14: undef.ined reference to `contains'--- 印刷
~/Sour.ce/c-code/main.c:14: undefined reference .to `contains'              乙肝
~/Source/c-code./main.c:16: undef.ined reference to `contains'健康
~/Source/c-code/main.c:18: undefin.ed reference to `a.dd'.
~/Source/c-code/main.c:18: undefined referen.ce. to `differ'              乙肝
~/Source/c-code./main.c:20: undefined reference to `.drop'           鲜花
~/Source/c-code/main.c:.20: undefined reference to `contains.'.
~/Source/c-code/main.c.:23: undef.ined reference to `drop'教育
~/Source/c-code/main.c:23: u.ndefine.d reference to `delete'[成人用品]
~/Source/c-code/main.c.:24: undefined reference t.o `drop'.
~/Source/c-code/m.ain.c.:24: undefined reference to `delete'(        游戏          )


.h .c文件都在同一目录下。请问各位这是.什.么问题?谢谢!.

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线5842136.
发帖
2262
C币
-192932
威望
414
贡献值
1
银元
-2
铜钱
5064
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-10
Re:ubuntu9.10
gcc -c -g main.c -o main.o

离线03112.
发帖
2019
C币
-198744
威望
384
贡献值
1
银元
-1
铜钱
4562
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-10
Re:ubuntu9.10
谢谢EricFisher。
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个