我知道要在C中使用命令行参数,你可以这样做:
int main(int argc, char **argv)
{
//use argc and argv
}
今天我在思考它,我意识到我从来没有见过他们叫argc
和argv
。要求他们被称为这个或仅仅是惯例吗?如果需要,为什么会这样呢?
我可以这样做:
int main(int length, char**myinput){
//use length as you would argc and myinput
// as you would argv
}
我还没有机会写一个程序来测试它。
答案 0 :(得分:5)
C标准说你可以随意打电话给他们。
5.1.2.2.1程序启动
1程序启动时调用的函数名为main。该实现声明没有原型 功能。它应该使用返回类型int和no来定义 参数:
int main(void) { /* ... */ }
或有两个参数(这里称为argc和argv,虽然任何参数 可以使用名称,因为它们是它们所在的函数的本地名称 宣布): [..]
在What does int argc, char *argv[] mean?中,回答者meager表示argc
和argv
按惯例命名(分别为参数计数和参数向量)。
答案 1 :(得分:2)
这只是一个惯例,对名称没有要求。它们是任何其他用户定义的参数,因此请使用您想要的任何名称。