PHP 中通过 Web 执行 C/C++应用程序
这个
C++程序包含的程序的入口点:main(),main()函数带了两个参数:argc(命
令行传入参数的个数
)和 argv(一个包含了所传参数实际值的字符型指针数组)。这个
两个参数能被
C++
编译器自动捕获。
cout << endl << "You passed " << argc-1 << " arguement"
<< (argc-1 == 1 ? "" : "s") << "." << endl;;
这句话的意思是获得从执行命令行传入的参数的个数。
Argv 这个字符型指针数
组是从
0 开始检索的,它至少包含一个实际的值(即本程序的路径和名称),这个
值由
C++
”
编译器自动地附加上去。条件操作符
?”是用来判断命令行传入地参数是
否多于一个。例如,如果命令行过传入两个参数,我们地程序将输出如下信息
:
You passed 2 arguments.
cout << (argc-1 == 1 ? "This" : "These")
<< " arguement" << (argc-1 == 1 ? "" : "s") << " "
<< (argc-1 == 1 ? "is" : "are") << ": " << endl << endl;
接下来,我们同样用条件操作符来输出另一句话。不过要记住,即使我们不从
程序执行命令行传入任何参数,
main 函数地 argv[]参数也包含一个值。同样地,
如果我们从命令行传入两个参数给程序,程序将输出如下地信息:
These arguments are:
for(int i = 1; i < argc; i++)
cout << "[" << i << "] " << argv[i] << endl;