【发布时间】:2014-03-04 00:27:04
【问题描述】:
我有一个非常简单的 c 程序:
#include <stdio.h>
int main (int argc, char ** argv){
printf ("%s\n",argv[1]);
}
当像这样在 Linux/bash 上运行它时:
./a.out *
我得到以下输出:
a.c
为什么?
【问题讨论】:
-
这个问题似乎是题外话,因为它是关于 shell 的使用。
-
@H2CO3:有点。如果 Yigal 用于 Windows/DOS,则 shell 不会解释任何内容,并且 * 被传递给需要链接到库或处理 * 本身的程序。
-
不要对这个问题投反对票。我已经有一段时间没有这么努力地 ROFL 了——它有一些严肃的娱乐价值。 :D
-
我同意@ThorX89,而不是仅仅点击投反对票,请说明投反对票的理由?
-
@AmitPandya ThorX89 是在开玩笑。原因就在我的第一条评论中。
标签: c linux shell command-line-arguments glob