Linux (Ubuntu)c编程 (入门必看)

简介: Linux (Ubuntu)c编程 (入门必看)

一.编写C程序使用的编辑器的设置


       使用vim编辑器编写程序,也可使用vscode


1.设置Tab键为四个字节

       VI编辑器默认Tab键为八个空格,我们改为四个空格,用vi打开文件 /ect/vim/vimrc,在此文件最后面输入set   ts =4


2.VIM编辑器显示行号

       VIM 编辑器默认是不显示行号的,不显示行号不利于代码查看,我们设置VIM编辑器显示行号,同样是通过在文件 /etc/vim/vimrc 中添加代码来实现:加  set nu


7e1203443ec64b46bf7884ac7875e235.png


二.编译c程序


       使用gcc编译器 编写c程序


       首先安装gcc   sudo   apt-get  install gcc


-c  只编译不链接为可执行文件,编译器将输入的.c文件编译为.o的目标文件


-o  (输入文件名)用来指定编译以后输出的文件名,如果使用这个选项的话,gcc默认编译出来的可执行文件名字为啊a.out。


-g  添加调试信息,如果要使用调试工具(GDB)的话就必须添加入此选项,此选项指示编译器的时候生成调试所需要的符号信息。


-O  对程序进行优化


-O2 比 -O 更大幅度优化


三.第一个代码 hello world


编写:


a13b142bbf0f4e48aef1f3419abc205b.png


编译:0241ee84f17b4bd196a3a9879c15ea72.png


 0794a2d4aa3d4d73ab2563e04f524762.png


生成了  a.out 的可执行文件


运行:


05064c36c9204a2fada36e8549f5c0ef.png


四.make 工具和 make file 文件


1.make 与 make file的介绍

       make:一般说GNU  Make  是一个软件,用于将源代码文件编译为可执行的二进制文件,make主要用于完成自动化编译,make 工具编译的时候需要 make  file 文件提供编译文件。


       Make file :make工具所使用的文件,Make  file 指明了编译规则


2.Make file 使用

vi Make file


main中包含


main:main.o    input.o    calcu.o


生成main可执行文件


       gcc -o  main  main.o input.o calcu.o


main.o: main.c


       gcc -c main.c


input.o: input.c


       gcc -c input.c


calcu.o: calcu.o


       gcc -c caclcu.c


编译:make


gcc -c  main.c


gcc -c  input.c


gcc -c  calcu.c


gcc -o  main  main.o  input.o  calcu.o


链接生成main


执行:


./main


清除工程  make  clean


相关文章
|
23天前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
144 3
|
18天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
178 73
|
6天前
|
Linux Shell
Linux系统编程:掌握popen函数的使用
记得在使用完 `popen`打开的流后,总是使用 `pclose`来正确关闭它,并回收资源。这种做法符合良好的编程习惯,有助于保持程序的健壮性和稳定性。
17 6
|
7天前
|
Linux Shell
Linux系统编程:掌握popen函数的使用
记得在使用完 `popen`打开的流后,总是使用 `pclose`来正确关闭它,并回收资源。这种做法符合良好的编程习惯,有助于保持程序的健壮性和稳定性。
29 3
|
17天前
|
Ubuntu Linux 开发工具
ubuntu linux搭建lvgl
ubuntu linux搭建lvgl
21 6
|
20天前
|
项目管理 敏捷开发 开发框架
敏捷与瀑布的对决:解析Xamarin项目管理中如何运用敏捷方法提升开发效率并应对市场变化
【8月更文挑战第31天】在数字化时代,项目管理对软件开发至关重要,尤其是在跨平台框架 Xamarin 中。本文《Xamarin 项目管理:敏捷方法的应用》通过对比传统瀑布方法与敏捷方法,揭示敏捷在 Xamarin 项目中的优势。瀑布方法按线性顺序推进,适用于需求固定的小型项目;而敏捷方法如 Scrum 则强调迭代和增量开发,更适合需求多变、竞争激烈的环境。通过详细分析两种方法在 Xamarin 项目中的实际应用,本文展示了敏捷方法如何提高灵活性、适应性和开发效率,使其成为 Xamarin 项目成功的利器。
34 1
|
21天前
|
安全 Linux 开发工具
探索Linux操作系统:从命令行到脚本编程
【8月更文挑战第31天】在这篇文章中,我们将一起潜入Linux操作系统的海洋,从最基础的命令行操作开始,逐步深入到编写实用的脚本。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供新的视角和实用技能。我们将通过实际代码示例,展示如何在日常工作中利用Linux的强大功能来简化任务和提高效率。准备好了吗?让我们一起开启这段旅程,探索Linux的奥秘吧!
|
21天前
|
Linux
揭秘Linux心脏:那些让你的编程事半功倍的主要系统调用
【8月更文挑战第31天】Linux中的系统调用是操作系统提供给应用程序的接口,用于请求内核服务,如文件操作、进程控制等。本文列举了22种主要系统调用,包括fork()、exec()、exit()、wait()、open()、close()、read()、write()等,并通过示例代码展示了如何使用fork()创建新进程及使用open()、write()、close()操作文件。这些系统调用是Linux中最基本的接口,帮助应用程序与内核交互。
28 1
|
29天前
|
Ubuntu Linux 开发工具
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
|
29天前
|
机器学习/深度学习 Ubuntu Linux
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)