📄 multargp.c
字号:
#include <stdio.h>
#include <string.h>
#include <math.h>
#include "libMultpkg.h"
/*
* Function prototype; the MATLAB 7.0 Compiler creates mlfMultarg
* from multarg.m
*/
void PrintHandler( const char *text )
{
printf(text);
}
/* main函数用来调用multarg函数 */
int main( )
{
#define ROWS 3
#define COLS 3
mclOutputHandlerFcn PrintHandler;
mxArray *a = NULL, *b = NULL, *x, *y;
double x_pr[ROWS * COLS] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
double x_pi[ROWS * COLS] = {9, 2, 3, 4, 5, 6, 7, 8, 1};
double y_pr[ROWS * COLS] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
double y_pi[ROWS * COLS] = {2, 9, 3, 4, 5, 6, 7, 1, 8};
double *a_pr, *a_pi, value_of_scalar_b;
/* 初始化图形句柄,同时声明显示格式
*/
mclInitializeApplication(NULL,0);
libMultpkgInitializeWithHandlers(PrintHandler, PrintHandler);
/* 生成输入矩阵 "x" */
x = mxCreateDoubleMatrix(ROWS, COLS, mxCOMPLEX);
memcpy(mxGetPr(x), x_pr, ROWS * COLS * sizeof(double));
memcpy(mxGetPi(x), x_pi, ROWS * COLS * sizeof(double));
/*生成输入矩阵 "y" */
y = mxCreateDoubleMatrix(ROWS, COLS, mxCOMPLEX);
memcpy(mxGetPr(y), y_pr, ROWS * COLS * sizeof(double));
memcpy(mxGetPi(y), y_pi, ROWS * COLS * sizeof(double));
/* 调用mlfMultarg函数. */
mlfMultarg(2, &a, &b, x, y);
/* 显示得到的矩阵 "a". */
mlfPrintmatrix(a);
/* 显示输出矩阵 "b" */
mlfPrintmatrix(b);
/* 销毁中间矩阵变量. */
mxDestroyArray(a);
mxDestroyArray(b);
libMultpkgTerminate();
mclTerminateApplication();
return(0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -