在linux下执行一个简单的C程序

时间:2022-01-24 09:18:08

近来在linux部署了一个系统,想着顺便学习一下linux系统。想想也觉得丢人,作为一个程序员linux的水平还停留在幼儿园的阶段,实在是不应该,今天就编译了一个简单C的hello world程序,在这里记录下来,往后还得多多学习才行。

编译单个文件

首先 vim hello.c 在hello.c中 按下 i 或者 insert 输入以下内容
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv)
{
printf("Hello world!\n");
}
输入完成后按 esc 输入:wq保存并退出再输入以下命令:
/home# gcc -o hello hello.c
/home# ./hello
执行的结果为: Hello world!
在默认情况下产生的可执行程序名为a.out,但你通常可以通过gcc的“-o”选项来指定自己的可执行程序名称。 

编译多个文件

分别vim hello.c 和hellolinux.c两个文件,在两个文件中分别存入以下内容
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv)
{
printf("Hello world!\n");
hello_linux();
exit(0);
}

#include <stdio.h>

void hello_linux(void)
{
printf("hello linux!\n");
}

执行:
gcc -c hellolinux.c  
gcc -c hello.c
/home# gcc -o liunxworld  hellolinux.o hello.o
/home# ./liunxworld
输出的结果为:
Hello world!
hello linux!

或者将两个.c文件一起编译为# gcc -o hellol hello.c hellolinux.c 
# ./hellol 
Hello world!
hello linux!

使用gcc的“-c”标记来编译支持库代码: 

其他命令的一些解释:"."和".."。“.”代表当前路径,".."代表当前路径的上一级目录的路径。
绝对路径都是以“/”开头的,如/usr/bin/vi或者/home/zorro/,代表从根目录"/"开始计算的绝对路径。
相对路径都是不以“/”开头的,如git/linux/或者work/testplan,代表从当前所在目录开始计算的相对路径。
查看当前目录:pwd命令。
建立文件:touch hello.c查看内容:cat  hello.c查看版本信息: lsb_release -a
在全目录下查找命令:find / -name tomcat
删除文件:rm 剪切文件:mv
复制文件:cp
关于上述三者的具体用法可参照:http://tech.sina.com.cn/soft/2000-04-27/246.html