例如,如果我的程序名称为test.c
然后对于以下运行命令argc = 2
而不是4
。
$test abc pqr* *xyz*
答案 0 :(得分:2)
尝试运行:
$ echo abc pqr* *xyz*
您将理解为什么没有得到您期望的argc
值
答案 1 :(得分:1)
可能是因为你的shell / cmd.exe(没有给出具体信息!)使用*
作为文件glob。如果找不到与glob匹配的文件,则结果将为空。
尝试像这样打电话给你的程序:
test abc 'pqr*' 'xyz'
有关通配的详细信息,请参阅http://en.wikipedia.org/wiki/Glob_%28programming%29,有关转义全局的详细信息,请参阅shell的手册。