时间:2016-11-21来源:本站原创作者:佚名

在很多人的眼里,C语言和linux常常是分不开的。这其中的原因很多,其中最重要的一部分我认为是linux本身就是C语言的杰出作品。当然,linux操作系统本身对C语言的支持也是相当到位的。

作为一个真正的程序员来说,如果没有在linux下面用C语言编写过完整的程序,那么只能说他对C语言本身的理解还相关肤浅,对系统本身的认识也不够到位。作为程序员来说,linux系统为我们提供了很多理想的环境,这其中包括了下面几个方面,

(1)完善的编译环境,包括gcc、as、ld等编译、链接工具(2)强大的调试环境,主要是gdb工具(3)丰富的自动编译工具,主要是make工具(4)多样化的os选择,ubuntu、redflag等等(5)浩瀚的开源代码库当然,不管我怎么说,最终朋友们还是应该自己勇敢地跨出前进的第一步。如果还没有过Linux编程经验的朋友可以首先在自己的pc上面安装一个虚拟机,然后就可以在shell下面编写自己的C语言代码了。

编写完上面的代码后,你需要做的就是两个步骤:

1、输入gcchello.c-ohello;

2、输入./hello。

如果一切正常的话,此时你应该会在屏幕上看到一行hello的打印。如果你看到了,那么恭喜你,你已经可以开始linux的c语言编程之旅了。

当然,我们不会满足于这么简单的打印功能。下面就可以编写一个简单的迭代函数,

此时,同样我们需要重复上面的步骤:

1、输入gcchello.c-ohello;

2、输入./hello。

当然此时如果一切OK的话,你就会看到屏幕会有55这个数的输出。本来1到10的数据之和就是55,这说明我们的程序是正确的。

当然,还会有一些朋友对程序的反汇编感兴趣,那么他需要两个步骤:

1、gcchello.c-g-ohello;

2、objdump-S-d./hello。

之所以在gcc编译的时候加上-g是为了添加调试信息,objdump中的-S选项是为了在显示汇编代码的时候同时显示原来的C语言源代码。

长按加







































哪里白癜风医院好
白癜风医院去哪家最好

转载请注明原文网址:http://www.gzdatangtv.com/bcyyfz/1683.html
------分隔线----------------------------