【发布时间】:2018-11-10 05:03:44
【问题描述】:
当我们编写一个可以接受命令行参数的 C 程序时,我们将 main 函数编写为:
int main(int argc, char **argv) {
. . .
}
我们知道argc 大于等于1
所以,至少存在argv[0]。
我的问题是argv[0] 和后续参数(如果有的话)的分配缓冲区大小是多少? argv[1]、argv[2] 等?
【问题讨论】:
-
我认为这取决于实现(我认为没有定义的标准)。我希望大多数实现分配足够的内存来适应每个字符串(可能使用 strdup)
标签: c command-line-arguments argv argc