aaronmorgan
AaronJ1
采纳率28.6%
2015-05-22 14:40 阅读 1.9k
已采纳

关于linux多文件编译的问题

mian.c
struct student{
......
};

fun.c
fun(struct student){
}

fun函数是mian中的功能函数,但是,是一个单独的c源文件,所以在编译时分别
gcc -c fun.c -o fun.o
gcc -c main.c -o main.o

gcc main.o fun.o -o main

但是因为struct定义在main中gcc -c fun.c -o fun.o编译不过
而在main中再定义会报错

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    caozhy 从今以后生命中的每一秒都属于我爱的人 2015-05-22 14:57

    main加上

     #include <fun.c>
    

    直接编译main.c

    点赞 评论 复制链接分享
  • oyljerry oyljerry 2015-05-22 15:59

    struct定义应该放在h台头文件中,然后用到的c文件包含h文件。这样就可以编译通过了

    点赞 评论 复制链接分享
  • q3733353520 我用双手-成就你的梦想 2015-05-23 01:08

    gcc -o output fun.c main.c

    点赞 评论 复制链接分享

相关推荐