如何在VS2010中运行编译C和C++?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在VS2010中运行编译C和C++?相关的知识,希望对你有一定的参考价值。

参考技术A

VS2010 需要先新建工程项目,接着在源文件中添加cpp文件,然后再编写代码,最后编译运行就可以,下面是创建执行C++程序的步骤:

1、首先新建项目(文件-->新建-->项目)

2、提示需要选择项目的类型,找到Visual C++接着选择新建空项目,填入项目名称和选择项目保存的位置之后点击“确定”。

3、Visual C++空项目新建完成后,还需要在源文件和头文件(右键“源文件”-->添加-->新建项)。

4、新建项也需要选择添加的文件类型,这里选择C++文件(cpp)即可。

5、在cpp文件中写完想要执行的代码后就可以调试运行了。(调试-->开始执行(不调试))。

在 VS2015 中使用 cl 编译器的 C vs C++

【中文标题】在 VS2015 中使用 cl 编译器的 C vs C++【英文标题】:C vs C++ using cl compiler in VS2015 【发布时间】:2015-09-10 14:56:04 【问题描述】:

cl 编译器如何知道我是在编译 C 代码还是 C++ 代码? 我需要告诉编译器吗? 我用完了 VS2015 的开发人员命令提示符。我最初使用在 RedHat Linux PC 上编译和运行的 c++ 代码开始了这个项目。我将它移到了 WIN7,它不会在 cl 编译器下编译,除非我摆脱了 c++ 结构并实现了 C 等价物。 头文件中的构造函数是我必须解决的问题之一。

【问题讨论】:

通常按文件扩展名。 C 源文件往往以 .c 结尾,而 C++ 有几个替代方案(.cpp 很常见)。 我相信这两个答案现在都可以回答这个问题了。 【参考方案1】:

正如in MSDN 所记录的,它首先查看文件扩展名。如果是 .cpp 或 .cxx 则默认为 C++ 编译。几乎总是足以完成工作。同一页面还显示了如何强制选择,对 C 使用 /Tc,对 C++ 使用 /Tp。您可以使用 /TC 和 /TP 来强制所有源文件使用它。

【讨论】:

【参考方案2】:

文件扩展名将提供该信息。

.c 文件用于 C 和 .cpp 文件用于 C++。详情请查看this link。

另外,我发现此代码 here 显示是否使用了 CC++ 编译器:

下面的代码包含运行时使用的标准预定义宏 确定是使用 C 还是 C++ 编译器来编译代码。 对于 C 编译器,它还决定了 C 语言的版本 编译器实现的标准)。注意:有些人喜欢 使用 STDC_HEADERS 而不是 STDC..

#ifdef __cplusplus
 printf("C++ compiler\n");
#else
#ifdef __STDC__
#if (defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)) ||/*continue..
    ...on the next line */ (defined(__GNUC__) && !defined(__STRICT_ANSI__))
 printf("ANSI X3.159-1999 / ISO 9899:1999 (C99) compiler\n");
#else
 printf("ANSI X3.159-1989 (C89) / ISO/IEC 9899:1990 (C90) C compiler\n");
#endif
#else
 printf("Pre-ANSI (K&R) C compiler\n");
#endif
#endif

下面的代码确定是使用 C 还是 C++ 编译器 在运行时编译代码:

if (sizeof('c') != sizeof(int)) printf("C++ compiler\n");
else if ((unsigned char)1 < -1) printf("Pre-ANSI (K&R) C compiler\n");
else  int i;   i = 1 //* */
 +1;
if (i == 2) printf("ANSI X3.159-1999 / ISO 9899:1999 (C99) compiler\n");
else printf("ANSI X3.159-1989 (C89) / ISO/IEC 9899:1990 (C90) C compiler\n");

不要完全依赖链接,以下是文档中的信息:

备注

默认情况下,CL 假定扩展名为 .c 的文件是 C 源代码 带有 .cpp 或 .cxx 扩展名的文件和文件是 C++ 源代码 文件。当指定 TC 或 Tc 选项时,任何规范 /Zc:wchar_t (wchar_t 是本机类型) 选项被忽略。设置 Visual Studio 开发环境中的这个编译器选项

    打开项目的属性页对话框。有关详细信息,请参阅如何 至:Open Project Property Pages. 点击C/C++文件夹。 点击高级属性页。 修改编译为属性。

还有一个例子,也取自文档。

以下 CL 命令行指定 TEST1.c、TEST2.cxx、 TEST3.huh 和 TEST4.o 编译为 C++ 文件,TEST5.z 为 编译为 C 文件。

CL TEST1.C TEST2.CXX TEST3.HUH TEST4.O /Tc TEST5.Z /TP

【讨论】:

那个宏告诉我我的 C11 编译器是 C99 编译器。 那是因为该代码是在 2008 年编写的。因此只需稍加修改即可显示它是否为 C11。

以上是关于如何在VS2010中运行编译C和C++?的主要内容,如果未能解决你的问题,请参考以下文章

如何在VSCode内编译运行C++

如何在VSCode内编译运行C++

如何在VSCode内编译运行C++

如何使用VS2013编写C语言? 包括编译连接和运行测试.

在vs2012中,如何创建c语言程序?

使用vs2019如何只编译一个c++文件