零基础学C语言 HelloWorld

204 阅读1分钟

本文的开发环境为:

Ubuntu 16.04
GNU Make 4.1

HelloWorld

新建一个hello.c文件:

#include <stdio.h>
int main(int argc, char *argv[]){
    printf("%s\n","Hello world.");
    return 0;
}

这段代码很简单,第一行是引入头文件,然后定义一个main函数,其中main函数的第一个参数是运行时候传入的参数个数,第二个是传入的参数

编译

make ./hello

运行

./hello

如果一切正常的话,命令行就会输出HelloWorld

Makefile

make命令执行时,需要一个Makefile文件,以告诉make命令需要怎么样的去编译和链接程序。那为什么我们上面没有Makefile文件也可以构建呢?那是因为make内置了一些缺省规则,以上的规则大概是这样:

make ./hello
CFLAGS="-Wall" make ./hello

其中的CFLAGS="-Wall" make ./hello这行命令告诉编译器要报告所有的警告。接下来我们自己来写一个Makefile文件。新建一个Makefile文件,写入一下内容:

CFLAGS=-Wall -g
clean:
    rm -rf hello

要注意的一点是rm -rf前面是一个TAB,而不是四个空格。其中-g表示加入调试代码,可以使用GDB进行调试

然后来执行一下命令:

make clean
make ./hello

这时候就可以运行了