Matlab使用笔记-uint8类型之间的运算的坑

本文探讨了在Matlab中,当使用uint8类型进行运算时可能出现的越界问题。当uint8数值超出[0, 255]范围时,Matlab不会自动转换类型,这可能导致意料之外的结果。在进行uint8类型的数学运算时,需要注意潜在的类型和越界风险。" 79806976,7520722,PNG图片格式详解与Android平台编解码实践,"['Android P', 'Android 9.0', 'Codec', '图片格式', 'PNG']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在matlab中,uint8的为无符号8位整数,范围 : [0 255],那么当越界时会发生什么呢?

小于0:

>> uint8(-1)

ans =

    0

大于255:

uint8(266)

ans =

  255

这都比较自然,没什么。

我今天遇到的使我犯错的是这样一个东西,如果两个uint8相减产生了越界会发生什么呢?我之前一直以为matlab会将类型进行转换,然而实际上并不会,运算后结果仍旧是uint8

>> a = uint8([1 2])

a =

    1    2

>> b = uint8([3 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值