码迷,mamicode.com
首页 > 其他好文 > 详细

[2018.04.28] C with Pointer

时间:2018-04-30 10:20:19      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:point   inter   pre   text   turn   class   编译链接   col   nbsp   

gcc -c x1.c x2.c 只编译不连接

gcc x1.c x2.c -o output_filename 编译后连接成可执行文件

gcc x1.o x2.o -o output_filename 连接成可执行文件

1、例如,源文件 tmp.c,单独编译compile并连接link
  gcc tmp.c -o tmp.exe,这样中间生成的目标文件在链接过后删除。
  好像不能写成gcc -c tmp.c -o tmp.exe 因为-c 是只编译不链接。
2、比如多个文件 B.c A.c A.h,其中B.c为main方法入口源文件,
B.c源文件如下
1 #include <stdio.h>
2 #include "A.h"
3 
4 int main(void){
5     printA();
6     return 0;
7 }

   A.c源文件如下

#include <stdio.h>
#include "A.h"
void printA(){
    printf("fuck");
}

A.h头文件如下

void printA();

这个时候B.c要用到A.h头文件声明的、A.c定义的printA函数,这样的编译链接需要:

gcc -c B.c A.c              编译生成各自的目标文件A.o和B.o

gcc B.o A.o -o main         链接生成main.exe可执行文件

./main              运行main.exe

或者直接用gcc A.c B.c -o main多文件编译链接,生成可执行文件main

[2018.04.28] C with Pointer

标签:point   inter   pre   text   turn   class   编译链接   col   nbsp   

原文地址:https://www.cnblogs.com/f4k1r/p/8969746.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!