C++ 环境设置

Posted 华科℡云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 环境设置相关的知识,希望对你有一定的参考价值。

本地环境设置

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

文本编辑器

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

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

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

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

C++ 编译器

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

C++ 编译器用于把源代码编译成最终的可执行程序。

大多数的 C++ 编译器并不在乎源文件的扩展名,但是如果您未指定扩展名,则默认使用 .cpp。

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

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

安装 GNU 的 C/C++ 编译器

UNIX/Linux 上的安装

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

$ g++ -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。

Mac OS X 上的安装

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

Xcode 目前可从 https://developer.apple.com/download 上下载,需要使用 apple ID 登录 。

Windows 上的安装

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

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

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

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

如何在 Windows 上为 C++ 程序设置正确的初始语言环境?

【中文标题】如何在 Windows 上为 C++ 程序设置正确的初始语言环境?【英文标题】:how do I set the proper initial locale for a C++ program on Windows? 【发布时间】:2009-02-20 21:47:55 【问题描述】:

我对本地化编程相当陌生,我正在尝试弄清楚如何为新启动的非托管 C++ 应用程序(从应用程序内部)设置正确的初始语言环境。

据我所知,新应用程序从 C 语言环境开始,而不是正确的区域语言环境(英语、德语等)。所以我需要做的是调用setlocale( LC_ALL, "???" ),但我不确定如何获得第二个参数的正确值。它将类似于“英语”或“德语:德国”——基本上是用户通过区域和语言选项控制面板设置的任何语言环境。为了清楚起见,我不是在寻找如何格式化语言环境字符串,我正在寻找运行应用程序的计算机的正确语言环境字符串。

我猜有一些 Win32 API 可以给我这个,或者可能是一个包含正确值的注册表项。有人知道我应该做什么吗?

【问题讨论】:

【参考方案1】:

setlocale() 是 C,而不是 C++。我隐约记得在 VC6 上看到了两者之间的干扰,但那是一个错误。通常,setlocale() 只影响 C 函数的行为。

在 C++ 中,本地化由 std::locale 类控制。默认情况下,区域设置敏感操作使用全局区域设置,它是通过默认构造一个区域设置对象获得的,可以使用 std::locale::global(const std::locale&) 设置。

使用空字符串 (std::locale("")) 构造语言环境对象会创建与程序环境相对应的语言环境。

在程序启动时,全局语言环境是“C”或“经典”语言环境。要将全局语言环境设置为程序的环境语言环境(我猜这就是您要问的),您可以这样写:

std::locale::global(std::locale(""));

例如,我的区域设置当前设置为法语(加拿大)。运行这个:

int main(void)

  std::cout << std::locale().name() << std::endl;
  std::locale::global(std::locale(""));
  std::cout << std::locale().name() << std::endl;
  std::locale::global(std::locale("C"));
  std::cout << std::locale().name() << std::endl;
  return 0;

打印:

C
French_Canada.1252
C

【讨论】:

太好了,这正是我所需要的。看起来您还可以将给定 C++ 语言环境的 name() 传递给 setlocale(),以设置 C 语言环境。

以上是关于C++ 环境设置的主要内容,如果未能解决你的问题,请参考以下文章

在Chrome调试WebView内页面(Android环境)

selenium自动化实战-基于python语言(环境搭建)

chrome设置为无头浏览的模式,以便放linux上运行

chrome设置为无头浏览的模式,以便放linux上运行

Node.js入门教程 第一篇 (环境配置及概念原理)

Chrome开启无界面浏览模式Python+Windows环境