我想知道是否可以创建 array_of_strings 并将其发送到具有参数字符串 array_of_strings[] 的 C++ 程序?
答案1
吉尔斯的回答为你提供了 90% 的信息,但剩下的就靠 bash 来完成了。
$ arr=(foo bar 'Hello World!')
$ ./foo "${arr[@]}"
答案2
所有程序都接收字符串数组作为其参数。在C++中,参数是函数argv
的参数main
。该数组的第一个元素是程序的名称,其他元素是您传递的参数。
$ cat foo.cpp
#include <iostream>
int main (int argc, char *argv[]) {
for (int i = 1; i < argc; i++)
std::cout << argv[i] << std::endl;
return 0;
}
$ g++ -o foo foo.cpp
$ ./foo hello world
hello
world