最近、CSラボの学生I TAは、argv [0]が最初の引数ではなく、代わりに実行したコマンドであることがどれほど混乱しているかについて怒鳴っていました(彼らがしなければならないことがどれほど「愚か」であるかについて怒鳴るようなものです) Pythonではx==2または4の代わりにx==2またはx==4と書いて、なぜそれをしたのかと私に尋ねました。まあ、正直なところ、理由はわかりませんでした。プログラムを実行するためにどのコマンドが使用されたかを知ることの実用的な目的も、空のリスト/ベクトルを渡すことの問題もわかりません。また、googleもこの質問の解決に役立ちませんでした。
だから私の質問は、実行されたコマンド自体がコマンドライン引数のリスト/ベクトルに含まれているのはなぜですか?