簡體   English   中英

將字符指針數組作為參數傳遞時遇到麻煩

[英]trouble in passing character pointer array as argument

我只是在學習目標C,並獲得了包裝C庫以通過目標C調用的任務。在將字符指針數組傳遞給c函數時遇到了麻煩。 基本上我是通過目標c調用c程序的主要方法,但無法傳遞參數。 以下是我嘗試從目標c調用的函數:

int test_main( int argc, char *argv[] )

argv是從控制台傳遞的命令行參數,但現在我想從目標C代碼傳遞這些參數。 C程序的命令行語法為: ./test -karg1 -larg2 -rarg3 ....

請幫助我如何通過目標C調用它(確保我需要學習C語言中的Pointer)。

問候,議員

這並不難,並且您不需要對指針了解太多:

// 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。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM