zoukankan      html  css  js  c++  java
  • linux下c程序开发过程简单实例

    编辑

    ******max.h*********

    int max(int, int);

    *****max.c*********

    #include "max.h"

    int max(int a, int b)

    {

      return (a > b) ? a : b;

    }

    ******min.h*******

    int min(int, int);

    ******min.c*******

    #include "min.h"

    int min(int a, int b)

    {

      return (a<b) ? a : b;

    }

    *******main.c**********

    #include <stdio.h>

    #include "max.h"

    #include "min.h"

    int main(int argc, char** argv)

    {

      int a = 10, b = 20;

      printf("最大值:%d", max(a, b));

      printf("最小值:%d", min(a, b));

      return 0;

    }

    编译

    生成可执行文件:gcc main.c max.c min.c -o test

    生成静态库:

    gcc -c max.c min.c

    ar cr libtest.a max.o min.o

    gcc -o test main.c -L. -ltest

    生成共享库:

    gcc -c -fPIC max.c min.c

    gcc -shared -fPIC -o libtest.so max.o min.o

    注:-lm连接数学库、-lpthread连接线程库、-g可调试

    makefile

    main: main.o max.o min.o

      gcc -o main main.o max.o min.o

    main.o: main.c max.h min.h

      gcc -c main.c

    max.o: max.c max.h

      gcc -c max.c

    min.o: min.c min.h

      gcc -c min.c

    clean:

      rm *.o

    简化后:

    main: main.o max.o min.o

      gcc -o $@ $^

    .c.o:

      gcc -c $<

  • 相关阅读:
    经典问题的非经典解法
    经典问题之树的深度
    35、AndroidView的滑动方式
    30、Android属性动画
    31、Android矢量动画
    36、AndroidCanvas画布
    27、AndroidEventBus
    28、AndroidRxjava
    32、Android事件分发机制
    29、Android基本动画
  • 原文地址:https://www.cnblogs.com/feilv/p/4065485.html
Copyright © 2011-2022 走看看