小编典典

为什么 argv[0] 是 ./a.out 不是 a.out

all

我编写了简单的程序,打印出 argv[0] 并在终端中使用 gcc 进行编译。然后我通过编写 ./a.out 来执行 a.out 文件

我预计结果是 a.out,但它是“./a.out”。argv[0] 不是程序名吗?还是程序名包含路径??


阅读 84

收藏
2022-09-02

共1个答案

小编典典

第一个参数 ( argv[0])将包含路径。您可以通过移动到另一个目录并从该位置执行您的简单程序来看到这一点。您将需要进行自己的解析以获取程序名称。

2022-09-02