Linux下C编程从零开始
作者:手机用户2602925311 | 来源:互联网 | 2017-08-19 02:00
Linux下C编程从零开始--Linux通用技术-Linux编程与内核信息,下面是详情阅读。
这里向大家介绍一下在Linux/UNIX 的机器上,进行 C/C++ 编程的一些入门级知识。
· 所需具备的背景知识
· 开发所需的基本环境
· 获得帮助的途径
· 通过一个实例了解基本步骤
Prerequisite 先决条件:
在Linux上编写 C 程序,至少要熟悉以下两方面的基础知识:
1. C语言的编程基础,至少要知道一些基本的语法,控制流程等编程常识。
对常用的标准 C 函数库有常识性的了解。
2. 对Linux/UNIX 的操作有常识性的了解,掌握常用的shell 命令,如 ls, cat, cp, mkdir …etc.
Environment 所需环境:
1. Linux/ Unix 的操作系统,也可以使用windows下的cygwin。
我们这里讨论的都是通过shell命令行进行操作的。那如果进入了图形界面的Linux 怎么办呢?只要打开一个终端命令,就和命令行环境完全一样了(打开开始菜单可以找到终端命令)。
2. 必备的开发工具:
1) 输入程序需要一个编辑器。常用的有 vi , emacs. 在命令行上输入 vi, emacs, … 就可进入编辑环境
关于 vi
关于 EMACS
2) C语言的编译器。常用的是GNU的c语言编译器 gcc(编译 C 程序), g++(编译 C ++程序)。
关于 gcc / g++
关于 makefile >>>> 用于简化编译过程
这里有一片入门文章 Linux下C语言编程基础知识,可以先看一下
3) 调试程序的常用工具:gdb.
关于 gdb
Get help获得帮助:
关于 Linux 的文档是非常丰富的。最快捷,方便,全面的资料就在你的机器里,不要浪费。
在命令行上输入shell命令 man 或者 info:
$man gcc >>>> 这个命令可以获得GNU 的C语言编译器的文档。当然,他们是英文的。
关于 man
关于 info
网络上的资源也很多,多得以至于不知道什么才是自己最需要的。
关于如何获得有价值的信息
看一下 loveunix 上的相关资源 >>>>
无双补充的一些Linux下入门编程资料 >>>>
Basic steps 基本步骤:
1. 输入源代码
2. 编译,链接,运行
3. 调试程序
我们从最基本的 hello world 程序开始,实际操作一下:
1. 输入源代码
引用
$ emacs hello.c >>>> 进入emacs 编辑器环境
#include >>> 如果你看不懂这个函数,就去好好的看c语言的书
int main()
{
printf(“Hello World.\n”); >>>> Emacs环境下,按下 Tab 键,有自动缩进功能
exit(0);
}
完成输入后,按住CTRL 键,按下 x, 再按下 c , 最后松开 CTRL。 >>>> 程序保留并退出emacs 环境。
2. 编译,链接,运行
引用
$ gcc ?o hello hello.c
$ ./hello >>>> ./ 指明了所执行程序的路径
Hello World.
$
一个linux平台上的c程序开发已经完成咯
3. 调试
如果要使用 gdb 调试程序,那么在上一步编译的时候,记得加上 ?g 选项
引用
$ gcc ?g ?o hello hello.c
$ gdb hello >>>> 进入 gdb 调试环境
4. CVS版本控制软件 —— 协同工作和保留版本的工具
关于 CVS
推荐阅读
本文目录一览:1、apachephpmysql他们是什么关系 ...
[详细]
蜡笔小新 2023-10-13 13:49:54
像Slashdot这样的论坛上常常有人在攻击GNU,他们的观点在我看来完全是缺乏历史知识和不尊重历史。当GNU倡导称Linux为GNU/Linux时,这些人声称GNU企图从Linus ...
[详细]
蜡笔小新 2023-10-12 05:40:36
本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ...
[详细]
蜡笔小新 2023-12-10 18:39:23
本文介绍了在Linux中执行.sh脚本时出现/bin/sh^M: bad interpreter: No such file or directory异常的原因分析,并提供了两种解决方法:在Windows下进行编码格式转换,或在Linux中修改文件格式和执行权限。具体操作步骤也在摘要中给出。 ...
[详细]
蜡笔小新 2023-12-09 10:15:09
使用教材:《learnyouaHaskell》,中文1-8章戳我准备工作。编译器&调试器:安装HaskellPlatform, ...
[详细]
蜡笔小新 2023-10-13 15:56:09
Copyright(c)1985,1996,1998,2001,2002FreeSoftwareFoundation.Emacs指令通常包含有CONTROL键(有时候以CT ...
[详细]
蜡笔小新 2023-10-12 11:39:25
语 法:ls[-1aAbBcCdDfFgGhHiklLmnNopqQrRsStuUvxX][-I][-T][-w][--blo ...
[详细]
蜡笔小新 2023-10-11 21:06:42
经过前面的一系列工作后,GO的语言环境已经搭建完成。我们也初步体验了GO提供的大部分命令。但在正式进入开发之前,还有件工作要做,那就是选择一款适合自己的IDE。为什么使用IDE“程 ...
[详细]
蜡笔小新 2023-10-11 20:39:59
本文主要说明了Linux是什么,Linux发展历史,以及同Linux系统有关的 ...
[详细]
蜡笔小新 2023-10-11 10:48:48
本文介绍了Win10下游戏不能全屏的解决方法,包括修改注册表默认值和查看兼容游戏列表。同时提供了部分已经支持Win10的热门游戏列表,帮助玩家解决游戏不能全屏的问题。 ...
[详细]
蜡笔小新 2023-12-14 13:40:42
本文介绍了两种PDF内容编辑的方法:迅捷PDF编辑器和Adobe Acrobat DC。使用迅捷PDF编辑器,用户可以通过选择需要更改的文字内容并设置字体形式、大小和颜色来编辑PDF文件。而使用Adobe Acrobat DC,则可以通过在软件中点击编辑来编辑PDF文件。PDF文件的编辑可以帮助办公人员进行文件内容的修改和定制。 ...
[详细]
蜡笔小新 2023-12-12 19:37:50
本文详细介绍了Vim编辑器中的三种模式(命令模式、末行模式和编辑模式)以及它们之间的操作区别和切换方法。Vim编辑器凭借其多种命令快捷键和高效率的操作方式,得到了广大厂商和用户的认可。对于想要高效操作文本的用户来说,了解这些模式的使用方法是必不可少的。 ...
[详细]
蜡笔小新 2023-12-12 15:59:51
本文介绍了使用Python解析C语言结构体的方法,包括定义基本类型和结构体类型的字典,并提供了一个示例代码,展示了如何解析C语言结构体。 ...
[详细]
蜡笔小新 2023-12-11 18:45:50
本文介绍了在chrome浏览器中使用编辑器实现网页截图功能的方法。通过在地址栏中输入特定命令,打开控制台并调用命令面板,用户可以方便地进行网页截图操作。 ...
[详细]
蜡笔小新 2023-12-10 15:50:00
本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ...
[详细]
蜡笔小新 2023-12-10 11:01:31
手机用户2602925311
这个家伙很懒,什么也没留下!