我只是在学习目标C并得到一个赋值C包来通过目标C调用。我在将字符指针数组传递给c函数时遇到了麻烦。基本上我通过目标c调用c程序的主要方法,但无法传递参数。下面是我试图从目标c调用的函数:
int test_main( int argc, char *argv[] )
其中 argv 是从控制台传递的命令行参数,但现在我想从目标c代码传递这些参数。 C程序的命令行语法是: ./ test -karg1 -larg2 -rarg3 ....
请帮助我如何通过目标C调用它(我确实需要学习C中的指针)。
此致 MP
答案 0 :(得分:1)
这不是太难,你不需要了解指针:
// Initialize an array of four constant C strings
// (that is, pointers to zero-terminated char arrays)
const char* argv[] = {"./test", "-karg1", "-larg2", "-rarg3"};
// Call your test function
int res = test_main(4, argv);
请注意,初始参数(位置0)是程序的名称。这就是C程序所期望的:他们的第一个“实际”论点是在第1位。