1

在 Java 中,您可以使用void main(String[] args).

在 Eclipse 中查找run configuration、输入参数并运行程序,但在 C++ 中,int main()如何使用 Visual Studio 2010 将参数传递给程序?

4

3 回答 3

7

虽然int main()是正确的,但您可以使用int main(int argc, char *argv[])int main(int argc, char **argv)来获取参数计数argc和 char 数组(字符串)的数组argv

请注意,第一个参数将始终是您正在运行的程序的路径。

于 2013-04-28T16:44:45.993 回答
1

示例代码:

// command_line_arguments.cpp
// compile with: /EHsc
#include <iostream>

using namespace std;
int main( int argc,      // Number of strings in array argv
          char *argv[],   // Array of command-line argument strings
          char *envp[] )  // Array of environment variable strings
{
    int count;

    // Display each command-line argument.
    cout << "\nCommand-line arguments:\n";
    for( count = 0; count < argc; count++ )
         cout << "  argv[" << count << "]   "
                << argv[count] << "\n";
}

阅读有关 C++ 中参数解析的更多信息,请阅读MSDN 中的 Parsing C++ Command-Line Arguments。也有示例输入输出。

于 2013-04-28T16:51:53.183 回答
1

为此,您可以参考任何教程中的任何基本 c++ 程序。

argc- number of argument count
argv- argumant list

下面是解析参数列表的示例代码。

#include <iomanip>
#include <iostream>
using namespace std;

int main( int argc, char* argv[] )
  {
  cout << "The name used to start the program: " << argv[ 0 ]
       << "\nArguments are:\n";
  for (int n = 1; n < argc; n++)
    cout << setw( 2 ) << n << ": " << argv[ n ] << '\n';
  return 0;
  }

如果您使用的是 Visual Studio,则有一个命令行属性,您可以使用该属性传递命令行参数

于 2013-04-28T16:53:06.813 回答