MATLAB ejecutar el archivo cpp (desde la configuración hasta la ejecución)

Instalar el compilador

Experiencia de Baidu: cómo instalar y configurar el compilador MinGW-w64 C / C ++ en MATLAB

  1. Funciones adicionales: acceso a funciones adicionales, seleccione el compilador C / C ++ "MinGW-w64" (busque en el cuadro de búsqueda)
  2. Elija la versión adecuada para descargar e instalar (elija el compilador de la versión de MATLAB correspondiente, elija la versión del compilador de 32 bits y 64 bits)
    R2015b a R2017a____GCC 4.9.2 _____ http: //tdm-gcc.tdragon.net
    R2017b y R2018a_______GCC 5.3 ______ http: // mingw-w64.org
    R2018b y posteriores__________GCC 6.3 ______ http: //mingw-w64.org
  3. Configurar variables de entorno (correspondiente al paso 7 en la experiencia de Baidu)
  4. Verifique si la configuración es exitosa (ingrese a la ventana cmd, ingrese "gcc -v" y haga clic en la tecla Enter, si no se reporta ningún error, es exitosa) La
    cmd
    siguiente pantalla es exitosa
    Gráfico de éxito
    5. Configuración de MATLAB, ingrese la entrada de línea de comando matlab
setenv('MW_MINGW64_LOC','C:\TDM-GCC-64')
mex -setup

Entre ellos, "C: \ TDM-GCC-64" es el directorio de instalación de MinGW. Este método debe ejecutar este comando cada vez que inicie MATLAB para usar MinGW.
Inserte la descripción de la imagen aquí

prueba

1. Cree un nuevo archivo en MATLAB, ingrese el siguiente contenido y guárdelo como helloworld.cpp

#include "mex.h"   
    void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])   
    {
    
      
    int i;   
    i=mxGetScalar(prhs[0]); //get input parameter  
    if(i==1)   
      mexPrintf("hello,world!\n");   
    else   
      mexPrintf("大家好!!!!\n");   
    }  

2. Entrada de línea de comando
Prueba de muestra

Anotación

La función mexFunction es la interfaz principal para que MATLAB llame a programas C ++, y el encabezado de la función se muestra a continuación

/*
*	nlhs 输出参数数目
*	plhs 指向输出参数的指针
*	nrhs 输入参数数目
*/
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])

Para conocer el significado específico del código, consulte: MATLAB llama al programa C ++

Supongo que te gusta

Origin blog.csdn.net/root_zhb/article/details/109174908
Recomendado
Clasificación