은 그것을 밖으로 시도 :iphone : 부호없는 정수로 변환 된 float가 음수이면 0으로 설정 되나요?
volatile float bob = -344.0f;
unsigned int fred = (unsigned int)bob;
printf("%d\n",fred);
출력은 0
될 것입니다 분명 나는 그것이 내가 포장하고 행동 않는 (AN unsgined INT에 서명 INT에서 주조 한 것처럼 랩 어라운드 기대하고있다 아이폰에서 예상대로)
우리는 부동 소수점 설정과 관련이 있다고 가정합니다.
어떤 아이디어가 있습니까?
'휘발성'? o_O – kennytm
@KennyTM : 최적화를 막기위한 몇 가지 무작위 시도. – matt
오래된 스레드,하지만 최근에이 문제에 대해 좀 더 자세히 설명했습니다. XCode 7.2.x에서는 음수 부동 소수점을 부호없는 단변에 캐스팅하면 테스트 한 모든 iOS 플랫폼에서 값이 랩 어라운드되었습니다. 그러나 Xcode 7.3.1을 사용하면 iPad 3에서 자르기 코드가 0으로 바뀌고 iPhone 6에서 랩 어라운드가 발생합니다. –