C 环境设置

本地环境设置

如果您想要设置 C 语言环境,您需要确保电脑上有以下两款可用的软件,文本编辑器和 C 编译器。

文本编辑器

这将用于输入您的程序。文本编辑器包括 Windows Notepad、OS Edit command、Brief、Epsilon、EMACS 和 vim/vi。

文本编辑器的名称和版本在不同的操作系统上可能会有所不同。例如,Notepad 通常用于 Windows 操作系统上,vim/vi 可用于 Windows 和 Linux/UNIX 操作系统上。

通过编辑器创建的文件通常称为源文件,源文件包含程序源代码。C 程序的源文件通常使用扩展名 ".c"。

在开始编程之前,请确保您有一个文本编辑器,且有足够的经验来编写一个计算机程序,然后把它保存在一个文件中,编译并执行它。

C 编译器

写在源文件中的源代码是人类可读的源。它需要"编译",转为机器语言,这样 CPU 可以按给定指令执行程序。

C 语言编译器用于把源代码编译成最终的可执行程序。这里假设您已经对编程语言编译器有基本的了解了。

最常用的免费可用的编译器是 GNU 的 C/C++ 编译器,如果您使用的是 HP 或 Solaris,则可以使用各自操作系统上的编译器。

以下部分将指导您如何在不同的操作系统上安装 GNU 的 C/C++ 编译器。这里同时提到 C/C++,主要是因为 GNU 的 gcc 编译器适合于 C 和 C++ 编程语言。

UNIX/Linux 上的安装

如果您使用的是 Linux 或 UNIX,请在命令行使用下面的命令来检查您的系统上是否安装了 GCC:

$ gcc -v

如果您的计算机上已经安装了 GNU 编译器,则会显示如下消息:

Using built-in specs.
Target: i386-redhat-linux
Configured with: ../configure --prefix=/usr .......
Thread model: posix
gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)

如果未安装 GCC,那么请按照 http://gcc.gnu.org/install 上的详细说明安装 GCC。

本教程是基于 Linux 编写的,所有给定的实例都已在 Cent OS Linux 系统上编译过。

Mac OS 上的安装

如果您使用的是 Mac OS X,最快捷的获取 GCC 的方法是从苹果的网站上下载 Xcode 开发环境,并按照安装说明进行安装。一旦安装上 Xcode,您就能使用 GNU 编译器。

Xcode 目前可从 http://developer.apple.com/technologies/tools 上下载。

Windows 上的安装

为了在 Windows 上安装 GCC,您需要安装 MinGW。为了安装 MinGW,请访问 MinGW 的主页 http://www.mingw.org,进入 MinGW 下载页面,下载最新版本的 MinGW 安装程序,命名格式为 MinGW-<version>.exe。</version>

当安装 MinWG 时,您至少要安装 gcc-core、gcc-g++、binutils 和 MinGW runtime,但是一般情况下都会安装更多其他的项。

添加您安装的 MinGW 的 bin 子目录到您的 PATH 环境变量中,这样您就可以在命令行中通过简单的名称来指定这些工具。

当完成安装时,您可以从 Windows 命令行上运行 gcc、g++、ar、ranlib、dlltool 和其他一些 GNU 工具。

安装好了之后,在正式学习 C 语言的基本构建块之前,我们先来运行一个最小的 C 程序结构,

C Hello World 实例

C 程序主要包括以下部分:

  • 预处理器指令
  • 函数
  • 变量
  • 语句 & 表达式
  • 注释

让我们看一段简单的代码,可以输出单词 "Hello World":

#include <stdio.h>int main()
{/* 我的第一个 C 程序 */printf("Hello, World! n");return 0;
}

接下来我们讲解一下上面这段程序:

  1. 程序的第一行 #include <stdio.h> 是预处理器指令,告诉 C 编译器在实际编译之前要包含 stdio.h 文件。
  2. 下一行 int main() 是主函数,程序从这里开始执行。
  3. 下一行 /.../ 将会被编译器忽略,这里放置程序的注释内容。它们被称为程序的注释。
  4. 下一行 printf(...) 是 C 中另一个可用的函数,会在屏幕上显示消息 "Hello, World!"。
  5. 下一行 return 0; 终止 main() 函数,并返回值 0。

编译 & 执行 C 程序

接下来让我们看看如何把源代码保存在一个文件中,以及如何编译并运行它。下面是简单的步骤:

  1. 打开一个文本编辑器,添加上述代码。
  2. 保存文件为 hello.c
  3. 打开命令提示符,进入到保存文件所在的目录。
  4. 键入 gcc hello.c,输入回车,编译代码。
  5. 如果代码中没有错误,命令提示符会跳到下一行,并生成 a.out 可执行文件。
  6. 现在,键入 a.out 来执行程序。
  7. 您可以看到屏幕上显示 *"Hello World"*。
$ gcc hello.c
$ ./a.out
Hello, World!

请确保您的路径中已包含 gcc 编译器,并确保在包含源文件 hello.c 的目录中运行它。

如果是多个 c 代码的源码文件,编译方法如下:

$ gcc test1.c test2.c -o main.out
$ ./main.out

test1.c 与 test2.c 是两个源代码文件。

运行c++代码的软件_C语言入门干货:多种系统的C环境设置和简易代码运行相关推荐

  1. c语言圆周率计算_C语言入门这一篇就够了

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  2. c语言tab什么意思_C语言入门 — 一篇最全的C语言基础知识。

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  3. c语言char*怎么赋值_C语言入门笔记「收藏细细品系列」

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  4. c语言中int的取值范围_c语言入门(1)

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  5. c语言中return的作用_C语言入门基础整理

    学习计算机技术,C语言可以说是必备的,他已经成为现在计算机行业人学习必备的,而且应用也是十分的广泛,今天就来看看拥有几年c语言工作经验的大神整理的C语言入门基础知识,没有学不会,只有不肯学. 结构化程 ...

  6. c语言3到7位水仙花数流程图_C语言入门基础整理

    学习计算机技术,C语言可以说是必备的,他已经成为现在计算机行业人学习必备的,而且应用也是十分的广泛,今天就来看看拥有几年c语言工作经验的大神整理的C语言入门基础知识,没有学不会,只有不肯学. 结构化程 ...

  7. C语言项目 电话查询系统 哈希表实现(项目要求 + 运行界面 + 代码分析 + 完整代码)

    电话查询系统 1. 项目要求 2. 数据样例 3. 运行界面 4. 代码分析 5. 完整代码 6. 项目报告 关注博主不迷路,博主带你码代码! 1. 项目要求 设每个记录有以下数据项:用户名.电话.地 ...

  8. 解决非Unicode编码的软件多语言版本在日语、韩语环境下的乱码问题

    在第一次为公司的客户端软件定制日语版本的时候,由于软件开发是非Unicode版本的,发现当加载日语后,无论是在中文操作系统还是在日语操作系统下,软件界面上的大部分日语显示的都是乱码.在上网查看了相关的 ...

  9. c mysql注册登录_C语言实现注册登录系统

    本文实例为大家分享了C语言实现注册登录系统的具体代码,供大家参考,具体内容如下 /* Note:Your choice is C IDE */ #include "stdio.h" ...

最新文章

  1. 用python解“混合类型数据格式输入”题
  2. OpenStack 关闭安全组
  3. boost::core模块实现交换std的dateorder
  4. 您如何使用硒来计算自动化测试的投资回报率?
  5. 阿里云物联网平台python开发手册_阿里云物联网平台之云端API调用(即云端开发教程)...
  6. java 创建类带泛型_java-创建泛型类列表
  7. 在pcDuino上安装OpenJFX
  8. nginx源码分析之线程池
  9. 联合国首席AI顾问专访:我们期望AI应该是完美的,但这永远不会
  10. go语言学习-多重返回和匿名变量
  11. 程序猿生存指南-57 故友来京
  12. python 压缩算法_lzma — 用 LZMA 算法压缩
  13. 全键盘模式,目前按center key 和LSK时候会进入menu 菜单,期望按center键进入编辑
  14. 游戏背景音乐怎样达到阴阳平衡?
  15. 【MATLAB教程案例47】基于双目相机拍摄图像的三维重建matlab仿真
  16. c++植树问题解决代码
  17. 374. Guess Number Higher or Lower*
  18. deinterlace 隔行 progressive 逐行 3:2pulldown
  19. Django模板系统(十分 非常详细)
  20. VS2008安装失败解决案例一则

热门文章

  1. 防止apche列出目录以及下载文件
  2. maven+eclipse编译常见问题
  3. JS中获得窗口属性的方法
  4. python matplotlib显示图片_Python OpenCV ——Matplotlib显示图片
  5. 人类一败涂地电脑版_人类一败涂地游戏正式上架同步推免费版
  6. qt 将不同的数据类型组成一个新类型_SQL 通用数据类型
  7. 【Python】纯代码通过神经网络实现线性回归的拟合
  8. 【STM32】定时器中断实验代码详解
  9. 第四章 多变量线性回归-机器学习老师板书-斯坦福吴恩达教授
  10. 一起学nRF51xx 2 - clock