MATLAB中isequal函数转化为C语言

这篇具有很好参考价值的文章主要介绍了MATLAB中isequal函数转化为C语言。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

有项目算法使用matlab中isequal函数进行运算,这里需要将转化为C语言,从而模拟算法运行,将算法移植到qt。

MATLAB中isequal简单介绍

语法

tf = isequal(A,B)

tf = isequal(A1,A2,...,An)

说明

如果 A 和 B 等效,则 tf = isequal(A,B) 返回逻辑值 1 (true);否则,返回逻辑值 0 (false)。有关每种数据类型的等效性的定义,请参阅输入参数部分。NaN(非数字)、NaT(非时间)、未定义的分类元素和 <missing> 值被视为与其他元素不相等,彼此之间也不相等。

要将 NaN、NaT、<undefined> 和 <missing> 值视为与其他此类值相等,请使用 isequaln。

示例

如果所有输入是等效的,则 tf = isequal(A1,A2,...,An) 返回逻辑值 1 (true)。

比较两个数值矩阵

创建两个数值矩阵并比较其相等性。

A = zeros(3,3)+1e-20;

B = zeros(3,3);

tf = isequal(A,B)

tf = logical

   0

函数返回逻辑值 0 (false),因为这两个矩阵有些许不同,并非完全相等。

比较两个结构体

A = struct('field1',0.005,'field2',2500);

B = struct('field2',2500,'field1',0.005);

比较结构体的相等性。

tf = isequal(A,B)

tf = logical

   1

即使每个结构体中的字段顺序不同,isequal 也将这些字段视为相同,因为它们的值相等。

实际使用场景

A=[1 2 3 4 5 6]

B=[1 2 3 4 5 6]

isequal(A,B)

>>

>> A=[1 2 3 4 5 6]

B=[1 2 3 4 5 6]

isequal(A,B)

A =

     1     2     3     4     5     6

B =

     1     2     3     4     5     6

ans =

     1

MATLAB中isequal函数转化为C语言,嵌入式系统,matlab,c语言,isequal

C语言实现

代码如下所示




int iseual(unsigned char *pA, unsigned char *pB, unsigned int m, unsigned int n) {

    int i, j;
    for(i = 0; i < m; i++)
    {
        for(j = 0; j < n; j++)
        {
            if(pA[i][j] != pB[i][j])
                return 0;
        }
    }

    return 1;
}

 文章来源地址https://www.toymoban.com/news/detail-687216.html

到了这里,关于MATLAB中isequal函数转化为C语言的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【嵌入式——C语言】共用体

    定义 :共用体和结构体类似,也是一种构造类型的数据结构,在进行某些算法时,需要使用几种不同类型的变量存到同一段内存单元中,几个变量所使用空间相互重叠,这几个不同的变量共同占用一段内存的结构,被称作共用体类型结构。 共用体的大小是其占内存长度最大

    2024年01月22日
    浏览(40)
  • 嵌入式C语言(入门必看)

          目录 STM32的数据类型 const static volatile extern  struct结构体 enum  typedef #define 回调函数 #ifdef 、#ifndef、#else  、#if     嵌入式开发中既有底层硬件的开发又涉及上层应用的开发,即涉及系统的硬件和软件,C语言既具有汇编语言操作底层的优势,又

    2024年01月17日
    浏览(35)
  • 【面试集锦 - 嵌入式软件 - C语言】

    指针函数(Pointer to a Function)和函数指针(Function Pointer)是在C和C++中经常使用的概念,它们虽然名称相似,但是在用法和作用上有一些区别。 指针函数 指针函数是指返回值为指针类型的函数。换句话说,它是一个函数,其返回类型是一个指针。指针函数可以用来实现动态分

    2024年02月07日
    浏览(43)
  • (嵌入式c语言)c语言编译常见错误

    预处理(gcc -E -o)-编译(gcc -S -o)-汇编(gcc -c -o)-链接(gcc -o) 将代码中的define 和 include替换成实体码  define和include不是,是在编译过程中处理的。 包含 #include 包含头文件 宏 #define 宏  替换  不会进行语法检查 #define 宏  宏体   宏体要加括号 #define ABC 

    2024年02月11日
    浏览(31)
  • 嵌入式linux_C应用学习之API函数

    pathname:字符串类型,用于标识需要打开或创建的文件,可以包含路径信息,如:“./src_file”、\\\"/home/dengtao/hello.c\\\"等;如果 pathname 是一个符号链接,会对其进行解引用。 flags:调用 open 函数时需要提供的标志,包括文件访问模式标志以及其它文件相关标志,如O_RDONLY,O_CREAT,

    2024年01月15日
    浏览(37)
  • rust嵌入式之用类函数宏简写状态机定义

    笔者一向认为,用有限状态自动机来做硬件控制是最好的选择,同时又倾向于用文本定义来定义状态机是更好的做法。所以此次用rust开发嵌入式自然也是如此。 状态机实现起来很简单,关键是用文本来定义状态机,在rust中,自然是用宏来实现。 在折腾的过程中,又是发现各

    2024年01月22日
    浏览(32)
  • MCU嵌入式开发-硬件和开发语言选择

    主要考虑以下方面来决定是否需要RTOS支持: 需要实现高响应时的多任务处理能力 需要实现实时性能要求高的任务 需要完成多个复杂的并发任务 具备满足工控系统实时性要求的各项功能特性。通过它提供的硬件库、线程支持、中断支持等,可以完全控制微控制器的各个外设,实

    2024年02月12日
    浏览(46)
  • 嵌入式学习之C语言指针部分复习

    今天主要把C语言的指针部分再次认真的复习了一下,对于指针的整体框架有了更加深刻的理解,特别要重点区分函数指针,指针函数,数组指针,指针数组部分,对于这部分的应用非常重要,而且C语言指针部分是面试的重中之重,所以要加强练习才行。 今天的学习是充满动

    2024年02月12日
    浏览(29)
  • 嵌入式C语言基础(STM32)

    前言:一条混迹嵌入式3年的老咸鱼,想到自己第一次接触到stm32的库函数时,c语言稀碎,痛不欲生的场景,该文章为萌新指条明路。 位操作在嵌入式中常用于直接对芯片的寄存器进行操作,当时作为初学者的我看着一脸懵逼,至于为什么这样修改,下面好好分析一下。  一

    2024年02月02日
    浏览(46)
  • FPGA嵌入式开发一些Xilinx SDK库函数的理解

    最近在测试AXI Quad SPI这个IP核的端口时序,搭建BD后导出到硬件,在SDK中导入xspi_intr_example.c的源文件,在师兄的帮助下,浅浅研究了一下代码。 首先,需要修改源程序中的错误,参照CSDN文章:ZYNQ中断示例修改 做出以下修改: 此外,还要对中断驱动实例名称进行修改: 以下

    2024年02月12日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包