Linux系统下运⾏c++程序
引⾔
为什么要在Linux下写程序?
⾸先要问⼀下⾃⼰,为什么要写这个程序。
如果我们写⼀个运⾏在windows平台的应⽤程序,那么⽤Linux写肯定是傻⽠或者强迫症,因为在windows平台调试windows程序可以更容易发现并解决问题,反过来也⼀样,在Linux平台调试出来的程序可以更好的适应Linux平台的环境,如果在windows下写出⼀个程序,结果到了Linux的运⾏环境出了暗病,那真是欲哭⽆泪,⽆从查起。
⽽很多时候,我们的程序都不是运⾏在windows平台的,例如嵌⼊式设备的内存容量⼗分有限,只能把Linux内核裁裁剪剪然后运⾏,所以嵌⼊式开发者⼀般都要求在Linux平台下⼯作。
正⽂
在windows下,我们写C++程序⼀般会有如下⼏个步骤:
编写.cpp⽂件,代码都在⾥⾯;
可能还有⼀些.h⽂件之类的⽀持⽂件,这些⽂件⼀般都会放在⼀起,或者相对位置是固定的;
linux下gcc编译的四个步骤编译⽂件,链接⽂件,⽣成.exe⽂件
双击执⾏.exe⽂件(其实开发平台⾥的“运⾏”就是帮你双击了⼀下⽽已)
在Linux下这些步骤基本都是⼀样的,不同的是,Linux最后⽣成的⽂件不是.exe,⽽是.out
步骤
⾸先得有个Linux操作系统,如果是新⼿(像我)最好选⼀个图形界⾯做的好的,例如Ubuntu。⼀般这些操作系统都是免费开源的,这也是Linux的⼀⼤好处,可以直接修改⼀切⽂件,⽽windows的防御措施对于菜鸟和⼀般⽤户很好⽤,但是对开发者⽽⾔就是个坑。
在Linux操作系统上新建⼀个⽂件夹,在⾥⾯放你的⼯程,如下图
编写代码的部分就可以跳过了吧,例如我们都⾮常熟悉的hello world
接下来是编译,打开终端,将终端路径设置为你的⼯程⽬录。cd 和ls命令真是好⽤。。。dir命令跟ls命令类似,看个⼈喜好吧,都⼀样。
输⼊命令 gcc test.cpp
诶→_→?为什么编译不通过?当然不是程序写错了,⽽是 gcc 是 c 语⾔的编译器,⽽我们写的代码是C++代码,所以改为输⼊g++ test.cpp
没有任何问题,这个时候我们可以看见⼯程⽬录上多了⼀个a.out,它就是我们的“可执⾏⽂件”了。
可是为什么是 a.out ⽽不是 b.out 或者 nfsdnksd.out呢?这是默认的,没有为什么→_→如果想给编译出来的⽂件起⼀个名字,可以在编译的时候⽤ -o 命令,例如 g++ test.cpp -o joyce
然后我们就可以看到,⼯程⽬录多了⼀个joyce⽂件
执⾏⽂件的时候来的,在终端输⼊ ./a.out 即可看到你的程序输出。输⼊ ./joyce 也是⼀样的。记住不要漏了斜杠前⾯的点!!
这样我们就完成了⼀个最基本的程序编译和执⾏。
如果认为有什么可以改进的地⽅,⿇烦多评论,分享经验,⼤家⼀起进步
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论