신속하게 Float에 4 바이트가 예기치 않게 작은 결과를 제공합니다.

알렉스 웨인

이 답변에 따라 Swift의 바이너리 스트림에서 float를 재구성하려고합니다 . 내가 알 수있는 한, 바이트는 정확하지만 결과 플로트는 그렇지 않습니다.

func didReceive(data: NSData!) {
    var x:Float = 0

    var bytes:[UInt8] = [UInt8](count: 4, repeatedValue: 0)
    data.getBytes(&bytes, range: NSMakeRange(0, 4))
    memcpy(&x, bytes, 4)

    NSLog("x:%f bytes:[%d, %d, %d, %d]", x, bytes[0], bytes[1], bytes[2], bytes[3]);
}

이 함수는 다음을 출력합니다.

x:0.000000 bytes:[25, 0, 0, 0]

x디버거에서 검사 할 때 값을 다음과 같이보고합니다.

0.0000000000000000000000000000000000000000000350324616

그러나, 바이트 [25,0,0,0]진수해야 0x19000000내 생각, 약으로 번역한다6.617 .

여기 내 실수는 어디에 있습니까? Swift float는 IEEE754 32 비트 float가 아닙니까?

롭 메이 오프

리틀 엔디안 플랫폼에 있으므로 배열은 0x00000019IEEE 단 정밀도 부동 소수점 숫자로서 약 3.5 * 10 -44 인 32 비트 정수와 동일합니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Itertools Groupby가 예기치 않은 결과를 제공합니다.

분류에서Dev

strchr을 사용하는 숙제 문제가 예기치 않은 결과를 제공합니다.

분류에서Dev

list.append ()는 Python에서 어떻게 작동합니까?-예기치 않은 결과가 나타납니다.

분류에서Dev

정렬 함수가 C ++에서 예기치 않은 결과를 제공합니다.

분류에서Dev

테스트 -n은 예기치 않은 결과를 제공합니다.

분류에서Dev

'm'을 사용하여 달을 추가하는 MomentJS는 예기치 않은 결과를 제공합니다.

분류에서Dev

Numpy FFT는 신호 주파수가 fft bin에 정확히 떨어질 때 예기치 않은 결과를 제공합니다.

분류에서Dev

Excel에서 찾기가 예기치 않은 결과를 제공하는 이유는 무엇입니까?

분류에서Dev

Matlab fvtool은 예기치 않은 결과를 제공합니다.

분류에서Dev

Git : Merge는 예기치 않은 결과를 제공합니다.

분류에서Dev

char + int는 예기치 않은 결과를 제공합니다.

분류에서Dev

pandas의 문자열 바꾸기 메서드가 예기치 않은 결과를 제공합니다.

분류에서Dev

어레이를 다른 어레이에 저장하면 예기치 않은 결과가 발생합니까?

분류에서Dev

$ or 연산자가 mongodb에서 작동하지 않아 예기치 않은 결과가 발생합니다.

분류에서Dev

$ or 연산자가 mongodb에서 작동하지 않아 예기치 않은 결과가 발생합니다.

분류에서Dev

WHERE 절에서 AND와 OR를 혼합하면 예기치 않은 결과가 발생합니다.

분류에서Dev

WHERE 절에서 AND와 OR를 혼합하면 예기치 않은 결과가 발생합니다.

분류에서Dev

파이썬으로 이진 읽기는 예기치 않은 결과를 제공합니다

분류에서Dev

NSDictionary를 [NSDictionary]에 추가하면 예기치 않은 결과가 발생합니다.

분류에서Dev

object.class가 Ruby에서 예기치 않은 결과를 반환합니다.

분류에서Dev

PySpark에 가입하면 예기치 않은 결과가 발생합니다.

분류에서Dev

"%"로 작업하면 예기치 않은 결과가 발생합니다.

분류에서Dev

내부 차원이 0 인 numpy 내적은 예기치 않은 결과를 제공합니다.

분류에서Dev

json.dumps ()는 python 2.7에서 str의 하위 클래스 변수를 전달할 때 예기치 않은 결과를 제공합니다.

분류에서Dev

std :: string을 조작하는 함수가 예기치 않은 결과를 생성합니다.

분류에서Dev

객체 배열을 통한 PHP 루프가 예기치 않은 결과를 제공합니다.

분류에서Dev

구조화 된 속성 및 프로젝션이있는 NDB 쿼리는 예기치 않은 결과를 제공합니다.

분류에서Dev

형제 컨테이너가 올바르게 정렬되지 않은 예기치 않은 결과

분류에서Dev

값을 대체하는 자바 스크립트에 예기치 않은 결과가 있습니다.

Related 관련 기사

  1. 1

    Itertools Groupby가 예기치 않은 결과를 제공합니다.

  2. 2

    strchr을 사용하는 숙제 문제가 예기치 않은 결과를 제공합니다.

  3. 3

    list.append ()는 Python에서 어떻게 작동합니까?-예기치 않은 결과가 나타납니다.

  4. 4

    정렬 함수가 C ++에서 예기치 않은 결과를 제공합니다.

  5. 5

    테스트 -n은 예기치 않은 결과를 제공합니다.

  6. 6

    'm'을 사용하여 달을 추가하는 MomentJS는 예기치 않은 결과를 제공합니다.

  7. 7

    Numpy FFT는 신호 주파수가 fft bin에 정확히 떨어질 때 예기치 않은 결과를 제공합니다.

  8. 8

    Excel에서 찾기가 예기치 않은 결과를 제공하는 이유는 무엇입니까?

  9. 9

    Matlab fvtool은 예기치 않은 결과를 제공합니다.

  10. 10

    Git : Merge는 예기치 않은 결과를 제공합니다.

  11. 11

    char + int는 예기치 않은 결과를 제공합니다.

  12. 12

    pandas의 문자열 바꾸기 메서드가 예기치 않은 결과를 제공합니다.

  13. 13

    어레이를 다른 어레이에 저장하면 예기치 않은 결과가 발생합니까?

  14. 14

    $ or 연산자가 mongodb에서 작동하지 않아 예기치 않은 결과가 발생합니다.

  15. 15

    $ or 연산자가 mongodb에서 작동하지 않아 예기치 않은 결과가 발생합니다.

  16. 16

    WHERE 절에서 AND와 OR를 혼합하면 예기치 않은 결과가 발생합니다.

  17. 17

    WHERE 절에서 AND와 OR를 혼합하면 예기치 않은 결과가 발생합니다.

  18. 18

    파이썬으로 이진 읽기는 예기치 않은 결과를 제공합니다

  19. 19

    NSDictionary를 [NSDictionary]에 추가하면 예기치 않은 결과가 발생합니다.

  20. 20

    object.class가 Ruby에서 예기치 않은 결과를 반환합니다.

  21. 21

    PySpark에 가입하면 예기치 않은 결과가 발생합니다.

  22. 22

    "%"로 작업하면 예기치 않은 결과가 발생합니다.

  23. 23

    내부 차원이 0 인 numpy 내적은 예기치 않은 결과를 제공합니다.

  24. 24

    json.dumps ()는 python 2.7에서 str의 하위 클래스 변수를 전달할 때 예기치 않은 결과를 제공합니다.

  25. 25

    std :: string을 조작하는 함수가 예기치 않은 결과를 생성합니다.

  26. 26

    객체 배열을 통한 PHP 루프가 예기치 않은 결과를 제공합니다.

  27. 27

    구조화 된 속성 및 프로젝션이있는 NDB 쿼리는 예기치 않은 결과를 제공합니다.

  28. 28

    형제 컨테이너가 올바르게 정렬되지 않은 예기치 않은 결과

  29. 29

    값을 대체하는 자바 스크립트에 예기치 않은 결과가 있습니다.

뜨겁다태그

보관