C++ c++;错误:从命令行输入更改为变量输入
我想从命令行输入更改为变量输入C++ c++;错误:从命令行输入更改为变量输入,c++,C++,我想从命令行输入更改为变量输入 int main(int argc, char *argv[]) { std::cout << argc << std::endl; std::cout << argv[0] << std::endl; std::cout << argv[1] << std::endl; } 出现此错误:错误:数组初始值设定项必须是初始值设定项列表 char*argv[]=0 您必须
int main(int argc, char *argv[])
{
std::cout << argc << std::endl;
std::cout << argv[0] << std::endl;
std::cout << argv[1] << std::endl;
}
出现此错误:错误:数组初始值设定项必须是初始值设定项列表
char*argv[]=0 您必须提供数组的大小,因为您没有提供编译器可以从中推断大小的初始值设定项。同样,在C++11中,不能将字符串文本绑定到
char*
,请使用const char*
int main()
{
constexpr int argc = 2;
const char *argv[argc] = {};
argv[0] = "./server";
argv[1] = "127.0.0.1";
}
您可能希望探索如何更好地使用
std::array
。argv
是一个数组,而不是指针<代码>int foo[]=0代码>也将是一个错误。通过猜测编程不起作用。拿起并仔细研究这行的内容char*argv[]=0代码>怎么办?@LightnessRacesinOrbit,我的疏忽。固定的。谢谢
int main()
{
constexpr int argc = 2;
const char *argv[argc] = {};
argv[0] = "./server";
argv[1] = "127.0.0.1";
}