首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux笔记】Linux下编译C语言程序

在上一篇笔记中有分享Linux下的vi/vim编辑器的使用方法(【Linux笔记】Vi/Vim编辑器),现在我们就可以使用vi/vim编辑器编写C代码了。那么写完代码该怎么进行编译呢?...关于在Windows命令行下编译C程序的方法可查看往期笔记:【C语言笔记】windows命令行下编译C程序、【C语言笔记】使用notepad++、MinGW来开发C程序。...首先,使用命令gcc -v查看当前的Linux发行版是否有安装gcc编译器(PS:本文使用的Linux发行版是红帽6): ? 使用vi/vim编辑器写代码并保存为hello.c: ?...在Linux下进行C语言编程的学习可能会增加学习的成本,但是从长远来看仍然是有必要的。...若不想安装Linux系统,也想适应一下Linux环境,则可参考往期笔记:【C语言笔记】Windows下体验Linux环境。

12.4K10

linux下的C语言开发

大家好,又见面了,我是全栈君 在很多人的眼里,C语言linux常常是分不开的。这其中的原因很多,其中最重要的一部分我认为是linux本身就是C语言的杰出作品。...当然,linux操作系统本身对C语言的支持也是相当到位的。...作为一个真正的程序员来说,如果没有在linux下面用C语言编写过完整的程序,那么只能说他对C语言本身的理解还相关肤浅,对系统本身的认识也不够到位。...如果还没有过Linux编程经验的朋友可以首先在自己的pc上面安装一个虚拟机,然后就可以在shell下面编写自己的C语言代码了。...如果你看到了,那么恭喜你,你已经可以开始linuxc语言编程之旅了。 当然,我们不会满足于这么简单的打印功能。

5.8K30
您找到你想要的搜索结果了吗?
是的
没有找到

Linux基础——Linux开发工具(下)_makemakefile

前言:在经过前面两篇学习,大家对Linux开发工具都有一定的了解,而在此之前最重要的两个工具就是vim,gcc。...如果对这两个工具不太了解,可以先阅读这两篇文章: Linux开发工具 (vim) Linux开发工具 (gcc/g++) 首先让我们来初步了解一下本篇的目标: 1....make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。...这就完成了一个简单的makefile文件,包含了编译和删除功能 我们用vim编写一下test.c 在编写完成,保存退出后,我们实现自动化构建代码只要: 指令:make 如果想执行删除功能...总结 Linux常用的开发工具我们就说到这里,Linux开发工具不仅仅只有这么一点,make/makefile我们也仅仅只做到了入门,做一下简单的介绍,目前阶段完全够用,Linux内容还有很多,希望我们能继续加油

13610

Linux基础——Linux开发工具(上)_vim

前言:在了解完Linux基本指令和Linux权限后,我们有了足够了能力来学习后面的内容,但是在真正进入Linux之前,我们还得要学会使用Linux中的几个开发工具。...掌握vim编辑器使用,学会vim的简单配置 本篇主要内容: Linux 软件包管理器 - yum Linux 编辑器 - vim 1....Linux 软件包管理器 - yum 1.1 什么是软件包 首先在开始时,了解一下软件包是什么。 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序....因为在Linux中,只要输入成功过一次密码,在短时间内就不用输入第二次 2....vim配置的核心就是向.vimrc中添加更多的配置选项 因为现在的vim没有自动换行也没有缩进和括号补齐,并不算是一个合格的C/C++代码编辑器。

8510

Linux之基础开发工具

前言 Linux中的基础开发工具及其使用,包括yum(软件包管理器)、vim(编辑器)、gcc/g++(编译器)、makefile(项目自动化构建工具)、gdb(调试器)等。...3.汇编 将汇编语言转换为二进制语言(并非可执行程序,是二进制目标文件) gcc -c test.s -o test.o 从现在开始,进行程序的翻译工作,做完汇编工作后,变成可重定向目标二进制文件,就停下来...4.静态链接和动态链接 gcc meytest.c -o mytest.s Linux下形成一个可执行文件使用的链接默认是动态链接。...敢不敢删除系统中的C动态库? 不敢。用C动态库的程序非常多,库只有一份,所有用C语言编写的程序不会出现重复的库代码! =》 将动态库又称为共享库。...八、Linux下的第一个小程序——进度条 如果需要源码,可以参考该网址(我的gitee): 实现一个进度条源代码 总结 以上就是今天要讲的内容,本文介绍了Linux中的基础开发工具的相关知识

23720

Linux内核编程_linux内核开发工具

【转载】Linux内核编程与应用编程对比 转载链接1:http://www.arrowapex.cn/archives/66.html 在此之前也不清楚linux内核编程跟用户应用程序编程之间有什么不同...,正好这几天做了一点linux模块编程,遇到问题请教朋友并查一些资料,感觉对内核编程和用户应用程序编程的几点不同有了一点体会,就写了下来。...2.内核编程引进的头文件都在内核源码的include文件夹下,比如我的debian linux 2.6环境下是:/usr/src/linux/include下,而用户应用程序编程引进的头文件都是从开发环境头文件的...3.要查询一个函数能否在内核编程中用,可以通过http://lxr-itec.uni-klu.ac.at/linux-2.6.4/ident查 (这是针对linux2.6内核,也有针对2.4内核的),如果能查到...对于在linux内核实现网关的某些功能时,我发现,虽然linux已经提供了很多现成的东西,可以保证快速开发。但是内核本身架构是一个通用计算机,不是专门针对网络处理的。

13K20

Linux开发工具——gcc篇

前言:   我们前面已经学习了使用vim来编写代码,我们也知道了,Linux下的工具都是各自独立的,vim用来编写代码,我们如何执行代码呢?...我们C语言中所使用的 printf函数、scanf函数等都是在C语言 libc.so.6 库里面 的,而头文件只是 函数声明。...那么我们是如何执行C语言文件的呢?...我们可以使用 ldd 命令来查看对应可执行程序的库文件:   其实我们为什么可以直接运行C语言的代码是因为我们在Linux平台下 已经安装了对应的库文件以及标准头文件!   ...一般我们编译C语言的代码直接使用: gcc xxx.c -o 运行程序文件名#编译出来直接得到可执行程序 ✈️ 总结 普通用户想要进行sudo操作,需要root账号在sudoers文件里面将该普通用户进行对应的设置

13310

C#入门教程(一)–.Net平台技术介绍、C#语言开发工具

二、C#语言C Sharp语言)介绍 C#语言是一种运行在.Net平台之下的一种编程语言。我们用C#语言进行开发程序。在这里我们可以理解为,英语俄语等其他语言。他必须基于.Net平台之下进行开发。....net平台把C#语言翻译成机器语言。以达到计算机可以正确运行我们所写的程序的目的。 三、.Net平台都能做什么? 1.基于浏览器的网络应用。例如:我们通常所使用的百度、新浪。都是网络应用程序的范畴。...3.B/S与C/S的区别: 1).硬件环境不同: C/S 一般需要用户进行安装.Net的环境。而B/S一般只要有操作系统和浏览器就可以了。B/S架构实现了跨平台(任何平台)。...语言开发工具。...这是一个开发工具。我们在这个工具里面进行写代码。开发工具的下载:http://msdn.itellyou.cn/。(在本教程中,不会提供具体的问题解答,只会提供方法让大家去搜索。

1.4K30

Linux开发工具——vim篇

前言:   在Linux下我们是如何编写代码的呢?其实在Linux下有一个很不错的开发工具Linux编辑器——vim,那么话不多说,这就开启我们今天的话题!...认识vim   在以前,我们在Linux下常用的开发工具是vi,但是现在的vim使用起来是要比vi方便的。...在Linux中,编写代码用vim,编译代码用gcc/g++,调试代码用gdb,自动化编译我们使用make/makefile,所以,对我们来说,Linux当中的工具是互相独立的!...我们再对file.c文件进行cat查看是否保存:   保存成功,强制退出与保存可以自己做个测试,来熟悉这三种常用模式。...[c#w]:例如,[c4w]更改4个字符。 跳到指定的行 [ctrl + g]:列出光标所在行的行号。

11310

Linux环境基础开发工具

Linux开发工具 Linux编辑器-vim使用 ---- **vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面...(生成 .o) 汇编阶段是把编译阶段生成的 “.s” 文件转成目标文件 可使用选项 “-c” 就可看到汇编代码已转化为 “.o” 的二进制目标代码(目标代码生成指的是,把中间代码变换成为特定机器上的低级语言代码...install -y libstdc+±static 3、gcc 选项 -E: 只激活预处理,这个不生成文件,你需要把它重定向到一个输出文件里面 -S: 编译到汇编语言不进行汇编和链接 -c: 编译到目标代码...make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。...包含在一个makefile中引用另一个makefile,类似C语言中的include。

1.8K50

Linux开发工具——gdb篇

与gcc/vim一样,Linux下的调试功能也是独立的一个工具——gdb 那么我们话不多说,开启今天的话题!...Linux gcc/g++编译出来的 二进制程序,默认是release模式。  要使用gdb调试工具,必须在源代码上生成二进制程序的时候,加上 -g 选项。   ...我们先准备一个.c的源文件: list(或l)命令 作用: 显示指定行之后的代码(gdb自动记录最近一条指令),每次列10行。...而在Linux下的gdb中,我们使用如下命令来显示变量内容和地址。...用法: 程序运行时直接输入c回车,从这个断点运行到下个断点。 测试用例: finish命令 作用: 将一个函数运行结束,就停下来。 用法: 程序运行时直接使用finish命令即可。

11910

Linux【模拟实现C语言文件流】

---- 前言 在 C语言 的文件流中,存在一个 FILE 结构体类型,其中包含了文件的诸多读写信息以及重要的文件描述符 fd,在此类型之上,诞生了 C语言 文件相关操作,如 fopen、fclose、...fwrite 等,这些函数本质上都是对系统调用的封装,因此我们可以根据系统调用和缓冲区相关知识,模拟实现出一个简单的 C语言 文件流 本文重点 : 模拟实现 FILE 及 C语言 文件操作相关函数 注意...int _flush; //刷新方式,位图结构 int _fd; //文件描述符 }MY_FILE; 当前模拟实现的 FILE 只具备最基本的功能,重点在于呈现原理 在模拟实现 C语言...不同的缓冲区有不同的刷新策略,如果未触发相应的刷新策略,会导致数据滞留在缓冲区中,比如如果内存中的数据还没有刷新就断电的话,会导致数据丢失;除了通过特定方式进行缓冲区冲刷外,还可以手动刷新缓冲区,在 C语言...---- 总结 以上就是本次关于 Linux【模拟实现C语言文件流】的全部内容了,通过 系统调用+缓冲区,我们模拟实现了一个简单版的 myStdio 库,在模拟实现过程中势必会遇到很多问题,而这些问题都能帮助你更好的理解缓冲区的本质

22110

Linux C编程之一:Linuxc语言的开发环境

---恢复内容开始--- 今天开始根据Linux C编程相关视频的学习所做的笔记,希望能一直坚持下去。。。...; 2、在安装Linux时需要注意事项   在安装时选上“程序开发”中的“开发工具”,就可以自动安装gcc/gdb;   若想开发图形界面,还需要选上GNOME/KDE软件开发。...(GNU CCompiler)   是GNU推出的多平台编译器,以下是gcc支持编译的一些源文件的后缀及其解释     .c后缀 c语言源代码文件     .h后缀 是程序所包含的头文件     ...假如用户在安装过程中少装了这些包,就无法编译c源程序,这时候可以通过rpm包来迅速安装LinuxC开发语言环境的。...7、LinuxC程序开发过程:   (1)使用vi工具编辑写源程序;   (2)保存为*.c;   (3)使用gcc编译成二进制可执行文件;   (4).

10.7K00

Linux C编程之一:Linuxc语言的开发环境

今天开始根据Linux C编程相关视频的学习所做的笔记,希望能一直坚持下去。。。...在安装时选上“程序开发”中的“开发工具”,就可以自动安装gcc/gdb; 若想开发图形界面,还需要选上GNOME/KDE软件开发。...) 是GNU推出的多平台编译器,以下是gcc支持编译的一些源文件的后缀及其解释 .c后缀 c语言源代码文件 .h后缀 是程序所包含的头文件 .o后缀 是编译后的目标文件 例:gcc -o hello...假如用户在安装过程中少装了这些包,就无法编译c源程序,这时候可以通过rpm包来迅速安装LinuxC开发语言环境的。...7、LinuxC程序开发过程: (1)使用vi工具编辑写源程序; (2)保存为*.c; (3)使用gcc编译成二进制可执行文件; (4).

7.7K40
领券