生成帶參數的exe文件及matlab調用帶參數exe文件的方法

      因爲項目的需要,需要C++和matlab混合編程。一種方式是利用mexfunction實現,網上有很多的講解,大家可以去查閱;還有一種方式是matlab直接調用帶參數的exe文件,個人感覺用起來更方便一點,實現也比較簡單。下面做一些簡單講解,希望能對大家有用。

       1、如何生成帶參數的exe文件?

              我的理解是帶參數的exe文件是通過帶參數的主函數實現的。即:

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

       在這個main函數中,表面上看是有兩個參數,但是實際使用中給main函數

傳遞的參數是保存在argv中的,argc是總的參數的個數,比實際傳入的參數多1

個。原因在於argv中第1個值,也就是argv[0]存的是程序的全名,調用時不需要

單獨給出,而只需要給出在main函數中需要的其他參數。下面舉例簡單說明,利用

帶參數的exe求兩個數的和:

     

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

       {

            Sum=argv[1]+argv[2];

            cout<<Sum;

       }

       

      注意:  1、main函數的格式是固定的;

                  2、傳入的參數是存在agrv[1]及其之後的,而不是agrv[0]開始的。


       2、matlab怎麼調用帶參數的exe文件?

         帶參數的exe,在matlab中調用的格式爲: 

                           !exe文件名.exe  參數1  參數2  參數3....

         假設exe文件的名字爲Add,功能是求兩個數的和,那就需要兩個參數(實際是3個參數,argc=3),調用格式爲:

                                       !Add.exe   2   3

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章