How to eliminate the error caused by converting double to uint16
7 次查看(过去 30 天)
显示 更早的评论
How to eliminate the error caused by converting double to uint16
6 个评论
Dyuman Joshi
2023-10-14
I see, "convert" is used generally, where as "map" is used particularly when trying to convert numbers outside the range of an integer class.
Walter Roberson
2023-10-14
Consider, though, that (for example) π is within the numeric range 0 to 65535 so if you were using "convert" for in-range but "map" for out of range, you would have to use "convert" for π . uint16(pi) is of course uint16(round(pi)) which is 3 and there are a lot of other nearby values like that also get changed to 3. So even within the range 0 to 65535 the mapping is not "one to one and onto". It would not be unreasonable to argue that "convert" is possibly the wrong verb when the conversion is not bijective, that "map" might be a more appropriate verb -- but that "map" should be used throughout, not just for values outside of the range 0 to 65535.
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!