gcc -o不只是换名这么简单

-o 表示指定生成名称和路径,如果不指定,默认在执行make命令的路径下产生.o文件
  1. 先来看一个makefile生成可执行程序的目录情况
    gcc -o不只是换名这么简单
  2. 写一个小小的makefile
    1.要求,在当前目录下生成可执行程序
    2.在src目录下生成其他文件
    3尽可能的减少因为单一文件的改动而造成的其他文件的重复编译
    4.引用头文件
    如图:唯一不同点就是红线框
    gcc -o不只是换名这么简单
  3. 对比执行结果
    gcc -o不只是换名这么简单

gcc -o不只是换名这么简单

由此可见

gcc -o 不仅仅是改变名字,还会改变位置

推论:-o 表示指定生成名称和路径,如果不指定,默认在执行make命令的路径下产生.o文件