生成带参数的exe文件及matlab调用带参数exe文件的方法

来源:互联网 发布:mysql windows10 编辑:程序博客网 时间:2024/04/29 03:33

      因为项目的需要,需要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

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


0 0
原创粉丝点击