当前位置:首页 > > 充电吧
[导读]从命令提示窗口使用 Visual C++ Toolkit 2003 Brian JohnsonMSDN Visual C++ 内容战略家适用于:Visual Studio .NET 2003Micro

从命令提示窗口使用 Visual C++ Toolkit 2003 

Brian Johnson
MSDN Visual C++ 内容战略家

适用于:
Visual Studio .NET 2003
Microsoft Visual C++ .NET 2003
Microsoft Visual C++ Toolkit 2003

摘要:在本文中,Brian Johnson 描述了如何从命令行使用 Visual C++ Toolkit 2003 随附的 Microsoft Visual C++ 编译器。本文适用于以前从未使用过命令行编译器的初学者。

设计 Visual C++ Toolkit 2003 软件包的目的是,使开发人员能够通过 Visual Studio .NET 2003 随附的完全优化编译器来生成和测试应用程序。该软件包不是该产品完整版本的替代品;相反,它是一个使您能够评估和探索优化编译器的子集。此外,它使您能够生成适于学术研究的小型应用程序。我撰写本文的目的是,帮助刚刚接触 C++ 的读者了解如何从命令行使用 Visual C++ Toolkit 2003 编译器来生成简单的应用程序。

Visual C++ Toolkit 2003 不包含任何种类的 IDE,因此您需要按照旧方式使用编译器,通过文本编辑器和命令提示窗口来生成应用程序。在本文中,我将概述通过 Visual C++ Toolkit 2003 并且只使用记事本和命令提示窗口生成和运行应用程序时所需要采取的步骤。

首先,您需要安装 Visual C++ Toolkit 2003 软件包。我们具有一个工具包主页 (http://MSDN.microsoft.com/visualc/vctoolkit2003),它提供了指向下载中心页的链接。请访问该页,下载并安装编译器。为了帮助您开始工作,您还可以查找相关文章和常见问题列表。

在安装该工具包之后,您将在 Start 菜单中找到一个新的 Visual C++ Toolkit 2003 文件夹。该菜单包含一个指向 Visual C++ Toolkit 2003 自述文件的链接,并包含一个指向 Visual C++ Toolkit 2003 命令提示窗口的快捷方式。我们将完成从该快捷方式到命令提示窗口的所有工作,因此现在请继续操作,单击并打开它。

Visual C++ Toolkit 2003 命令提示窗口设置了很多通过该编译器生成应用程序所需的路径和选项。编译器需要的关键设置包括:

Set PATH=C:Program FilesMicrosoft Visual C++ Toolkit 2003bin;%PATH%
Set INCLUDE=C:Program FilesMicrosoft Visual C++ Toolkit 2003include;%INCLUDE%
Set LIB=C:Program FilesMicrosoft Visual C++ Toolkit 2003lib;%LIB%

这些设置将 Visual C++ Toolkit 2003 的路径放在 PATH 变量的开头。同样,INCLUDE 变量设置了该工具包随附的头文件的路径,而 LIB 变量设置了该工具包随附的库文件的路径。头文件声明库文件中提供的函数,并且使它们可以从应用程序中访问。在本文中,我不会讨论太多这方面的内容,但是您可以在本文结尾找到一些用于学习 C++ 的推荐书籍。

Microsoft C++ 命令行编译器名为 CL.EXE。要使用该工具编译 C++ 应用程序,您通常要使用文本编辑器(例如,记事本)编写应用程序,用扩展名 .cpp 保存该文件,然后调用该编译器,并传递您要编译的文件的名称作为参数。现在,让我们继续执行该工作。

按照惯例,在学习语言时生成的第一个应用程序是 Hello World。这是一个简单的应用程序,它将单词“Hello World!”输出到命令提示窗口。标准的 C++ Hello World 应用程序应如下所示:

#includeusing  namespace std;

int main()
{
   cout << "Hello World! n";
   return 0;
}

Hello.cpp

要测试这点儿代码,请通过在 Visual C++ Toolkit 2003 命令提示窗口中键入以下内容来创建一个新的文件夹:

mkdir Hello

通过键入以下内容导航到 Hello 文件夹:

cd Hello

现在您已经位于 Hello 文件夹中,下面请通过键入以下内容来创建一个新的 Hello.cpp 文件:

notepad Hello.cpp

记事本将打开并提示您创建新文件。将 Hello.cpp 清单中的代码键入或粘贴到记事本中。在记事本中单击 File,再单击 Save,然后返回到 Visual C++ Toolkit 2003 命令提示窗口并键入:

cl Hello.cpp

您将看到很多警告和消息,您现在可以安全地忽略它们。在列表的结尾,您应当看到以下消息:

Microsoft (R) Incremental Linker Version 7.10.3077
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:hello.exe
hello.obj

该消息表明 Hello.cpp 被编译为 hello.obj,并且它被链接到适当的 C++ 库以创建 Hello.exe 应用程序。您可以通过在命令提示窗口中键入 hello 来测试 Hello.exe 应用程序。您应当看到以下消息。

C:Program FilesMicrosoft Visual C++ Toolkit 2003Hello>hello
Hello World!

我在前面提到过,您在编译该应用程序时可能看到过一些警告,其中包括有关 C++ 异常处理程序以及是否启用展开语义的警告。在本文中,我将不会讨论这一特定主题,但是您可以在编译命令中指定 /EHsc 命令行选项,以便指定同步异常处理模型,并使这些消息消失:

cl /EHsc Hello.cpp

现在您已经打开了 Visual C++ Toolkit 2003 命令提示窗口,下面请查看一下 Visual C++ 编译器所提供的选项的数量。要获得该列表,请用 /help 选项运行该编译器。

cl /help

这个大型选项列表对于现代的 C++ 编译器而言是很常见的,它应当向您提供有关编译器复杂程度的一些暗示。您可以在 Visual C++ Compiler Options 页上获得有关编译器选项的详细信息。

现在您已经了解了如何使用 Visual C++ Toolkit 2003 生成和运行非常简单的应用程序,接下来您应当能够生成和测试介绍性的 C++ 书籍中可能包含的任何示例。如果您对于 C++ 还非常陌生,那么我建议您阅读下面的一些介绍性书籍:

Stan Lippman 和 Josee Lajoie 撰写的 C++ Primer

Stephen Randy Davis 撰写的 C++ for Dummies

Harvey M. Deitel 和 Paul J. Deitel 撰写的 C++: How to Program

如果您已经具有编程背景并且希望立即开始使用 C++,那么我建议您阅读由 Stan Lippman 撰写的 Essential C++。

您可以通过阅读由 Kate Gregory 撰写的优秀文章(它们随附在工具包中)来继续探索 Visual C++ Toolkit 2003。这些文章还可以从 MSDN 工具包主页上联机获得。

在很多解释如何使用 Visual C++ Toolkit 2003 来探索 C++ 的文章中,它们是其中的佼佼者。请随时地通过 brianjo@microsoft.com 向我发送便条,以提供您对本文的意见,以及您希望看到的有关该主题的其他文章的建议。

关于作者

Brian Johnson 是 MSDN 安全和 Visual C++ 内容战略家。他与别人合著了 Inside Microsoft Visual Studio .NET 2003 一书。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭