type conversion, precision loss
조회 수: 1 (최근 30일)
이전 댓글 표시
I observed a strange behaviour when working with data read from a binary file. Here a small example:
>> a=int32(1);
>> b=12.5;
>> c=a+b
c =
14
The value of c is now 14 "instead" of 13.5. Why is (int32+double) silently typecasted to int32? Tried it with different matlab versions (2010, 2011, 2012, 2013) with the same result. So maybe I just don't understand the logic behind it? I guess I'd prefere a result without precision loss?
댓글 수: 0
답변 (2개)
Azzi Abdelmalek
2014년 1월 6일
편집: Azzi Abdelmalek
2014년 1월 6일
It's what Matlab do. I don't think, there is a logic behind it. If the result was double, you can ask the same question.
you can wrtie
a=int32(1);
b=12.5;
c=double(a)+b
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!