matlab2c使用c++实现matlab函数系列教程-sign函数

版权声明:本文为博主原创文章,转载请注明来源。开发合作联系luanpenguestc@sina.com https://blog.csdn.net/luanpeng825485697/article/details/77824370

全栈工程师开发手册 (作者:栾鹏)

matlab2c动态链接库下载
matlab库函数大全
matlab2c基础教程
matlab2c开发全解教程

matlab2c调用方法:

1、下载动态链接库
2、将Matlab2c.dll拷贝到exe同目录下
3、将Matlab2c.h、Matlab2c.lib放到项目头文件目录下
4、在cpp文件中引入下面的代码

#include "Matlab2c.h"
#pragma comment(lib,"Matlab2c.lib")  
using namespace Matlab2c;

matlab中sign函数简介

1、sign函数:

符号函数

2、用法说明

当x<0时,sign(x)=-1;
当x=0时,sign(x)=0; 当x>0时,sign(x)=1。

sign的c++源码实现

将符号序列化为1,0,-1,
输入为矩阵a,输出矩阵a的各个元素的符号值。
即若元素大于0,则返回1;等于0,返回0;小于0,返回-1

Matrix Matlab2c::sign(Matrix& a)
{
    int i,j;
    Matrix p(a.row,a.column);
    for (i=0;i<p.row;i++)
        for (j=0;j<p.column;j++)
            if (a(i,j)>0)
                p(i,j)=1;
            else if(a(i,j)<0)
                p(i,j)=-1;
            else
                p(i,j)=0;
    return p;
}

sign函数的使用测试

#include "Matlab2c.h"
#pragma comment(lib,"Matlab2c.lib")  
using namespace Matlab2c;


int main()
{
    double a[]={-2,1,0,-1,2};
    Matrix aa=Matrix(1,5,a);
    Matrix cc=Matlab2c::sign(aa);
    cout<<cc.toString()<<endl;

    system("pause");
    return 0;
}

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭