通过 Exec 在 C 中运行 Python 脚本?

Ree*_*d B 0 c python bash exec

我想以下列方式在 C 中运行一个 python 脚本:(我已经分叉了)

err = execlp("python", "my_script.py", "test", (char*) NULL);
Run Code Online (Sandbox Code Playgroud)

在bash中,我可以成功运行

python my_script.py test
Run Code Online (Sandbox Code Playgroud)

(测试是python脚本的参数)

但是,程序输出

my_script.py: can't open file 'test': [Errno 2] No such file or directory
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?:3

Ree*_*d B 5

啊,我想通了。它应该是:

execlp("python", "python", "my_script.py", "test", (char*) NULL);
Run Code Online (Sandbox Code Playgroud)

按照惯例,第一个参数是可执行文件的文件名。我认为这是自动通过的,但显然不是。