1

我想知道在使用 Microsoft VS Express 2010 编译器学习 C 时可以试验哪些配置和设置。如果我只是启动一个空项目并添加我的 .h 和 .c 文件,它适用于 C 文件。我不必将模式从 C++ 更改为 C,我可以编译一个可执行文件并从命令区域运行它。是否可以从 IDE 中启动需要命令行参数的项目?如果是,如何?我有一个模块化程序,它进行堆排序,从命令行获取一个列表参数。我可以从命令行调用命令行参数来运行它,但是下次我这样做时,我想从 IDE 中使用命令行参数启动我的程序。这可能吗?

#include <stdio.h>
#include <stdlib.h>

#include "sort.h"


/* argc kommer att innehålla antalet argument på kommandoraden
   argv är en vektor med argc strängar som representerar
   argumenten. Observera att första argumentet, argv[0], är
   programnamnet.
*/
int main(int argc, char *argv[]) {
  int *vector, n, i;

  if(argc > 1) {
    n = argc - 1;
    vector = (int *) malloc(n * sizeof(int));

    for(i = 0; i<n; i++)
      vector[i] = atoi(argv[i+1]);

    sort(vector, n);

    printf("Sorted input: %d", vector[0]);
    for(i = 1; i<n; i++)
      printf(" %d", vector[i]);
    printf("\n");

    free(vector);
    return 0;
  } else {
    fprintf(stderr, "Error: No input arguments.\n");
    printf("This program sorts number on the command line.\n");
    printf("Usage: %s n1 n2 n3 ...\n", argv[0]);

    return 1;
  }
}
4

3 回答 3

2

IDE 可以使用命令行参数启动您的程序。

添加命令行参数:

  1. 在解决方案资源管理器中右键单击您的解决方案。
  2. 在侧边栏中选择配置属性->调试
  3. 将您一直使用的命令行参数添加到命令参数字段。

此外,如有必要,请在代码中设置断点以停止执行。

还有一件事:如果您单击Command Arguments 字段,或Configuration Properties GUI 中的大多数字段,您将获得一个带有文本区域的新对话框,用于编辑该字段。除此之外,您还会看到一个Macros>>按钮,其中显示了您可以在许多配置字段中使用的 IDE 宏。

于 2012-05-30T03:04:18.230 回答
1

右键单击项目,转到Properties.

  1. 单击配置属性。
  2. C/C++
  3. 先进的
  4. 编译为 ( 改成Compile as C code /TC)

应用上述设置并将源文件更改为.c扩展名。

在此处输入图像描述

于 2012-05-30T03:06:35.337 回答
1

其他研究员已经指出了如何进行 IDE 更改:

当您使用 C++ (g++) 编译器进行编译并将“C”代码作为 C++ 项目的一部分时,您应该使用适当的宏来保护您的 C 代码。如下所示:

#ifdef __cplusplus
extern "C" {
#endif //__cplusplus

`your C Code here `



#ifdef __cplusplus
}
#endif //__cplusplus
于 2012-05-30T04:00:52.123 回答