在C命令行程序中处理`argv`

前端之家收集整理的这篇文章主要介绍了在C命令行程序中处理`argv`前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经读过argv的第一个数组成员将始终是程序名称.

坚持下去是否有用?我正在学习,请原谅我,如果这是一个愚蠢的问题.

人们有没有取消第一个成员,因为它没用(并将argv重置为少一个?),或者将它留在那里进行最佳实践,因为人们期望它总是在那里(并且它与argc开箱即用) ?

解决方法

I’ve read the first array member of argv will always be the program name.

它应该是. C和C都要求如果argc大于零,则argv [0]应为程序名或空字符串.

某些系统在所有情况下都不一定遵循此约定(例如,在Windows上,您可以使用CreateProcess创建新进程,而不是在用于填充argc和argv的命令行参数中传递程序名称).

Is it ever useful to hang on to this?

当然.例如,如果要生成自己的另一个实例,或者如果要打印程序名称(例如在使用说明中).

Do people ever unshift the first member because it is useless,or is leaving it there best practice?

不要改变实际的论点;下一个出现的人可能会期望他们处于原始状态.

猜你在找的C&C++相关文章