如何使用exec命令将int和char * const args []传递给main?

时间:2014-09-18 12:37:46

标签: c unix

我正在尝试使用exec系列的Unix命令从另一个程序中执行C程序。

目标文件的主要功能定义为

int main(int argc, char *const argv[])

但exec命令似乎只接受

的参数
const char *path, char *const argv[]

如何将int值传递给此函数?将argv作为argv的第一个值包含它是否有效,即使{{1}}是为了获取char值而不是整数?

1 个答案:

答案 0 :(得分:6)

int argc由可执行加载程序自动传递。它是通过查找NULL数组中第一次出现argv指针来计算的。

为exec调用创建参数向量时,请确保其中的最后一个元素是NULL指针。 e.g。

char * argv[] = {"cat", "test.txt", NULL};