⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 doubleelement.c

📁 matlab实用教程
💻 C
字号:
#include <string.h> /* C语言的memcpy()函数需要string文件头 */
#include "mex.h"

#define NDIMS 2
#define TOTAL_ELEMENTS 4
 
void dbl_elem(unsigned short *x)
{
  unsigned short scalar=2;
  int i,j;
 
  for(i=0;i<2;i++) {
    for(j=0;j<2;j++) {
      *(x+i*2+j) = scalar * *(x+i*2+j);
    }
  }
}
 
void mexFunction( int nlhs, mxArray *plhs[],
                  int nrhs, const mxArray *prhs[] )
{
  const mwSize dims[]={2,2};
  unsigned char *start_of_pr;
  unsigned short data[]={1,2,3,4};
  size_t bytes_to_copy;
 
  (void) nlhs; (void) nrhs; (void) prhs; 
 
  /* 调用计算子程序 */
  dbl_elem(data);
 
  /* 创建2×2 矩阵,元素为无符号的16位整数 */
  plhs[0] = mxCreateNumericArray(NDIMS,dims,mxUINT16_CLASS,mxREAL);
 
  start_of_pr = (unsigned char *)mxGetData(plhs[0]);
  bytes_to_copy = TOTAL_ELEMENTS * (size_t)mxGetElementSize(plhs[0]);
  memcpy(start_of_pr,data,bytes_to_copy);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -