【发布时间】:2017-06-14 04:59:18
【问题描述】:
对于我的班级,我需要创建一个在运行时接受多个参数的函数:
void main(int x, int y, int generation, char *layout[20])
但是,当程序使用我对这些变量的输入运行时,信息不会存储在调试过程中
run 3 3 3 Test_Round
print x // returns 5
print y // returns -8779
如何将多个参数传递给 main 函数,以便 main 能够识别我给它的参数?
谢谢大家!我只是使用 argv[1] 等来获取我需要的正确数据!
【问题讨论】:
-
你的实现是否支持这种类型的主函数?
-
我认为它确实如此,因为它可以编译并且只给出警告。
-
你应该检查文档。
-
@IlyaMethot 这是一个糟糕的假设。 C 标准从不要求错误。在许多情况下,根本不需要诊断错误代码。如果它必须被诊断出来,一个警告就足够了。不要忽视警告。
-
main应该总是定义为int main(int argc, char **argv)。如果您以my_program 123 456 789调用您的程序,当输入main 时,argc 将为4,argv[0] 将指向一个包含“my_program\0”的字符数组,argv[1] 将指向一个包含“123\ 0”,argv[2] 将指向一个包含“456\0”的字符数组,而 argv[3] 将指向一个包含(你猜对了!)“789\0”的字符串。
标签: c parameters command-line-arguments main