C # Сравнение float и int - PullRequest
       1

C # Сравнение float и int

3 голосов
/ 01 октября 2010

Я видел этот код, плавающий по межтрубным каналам для определения, имеет ли устройство Windows Mobile экран VGA (код находится внутри метода класса Form):

SizeF currentScreen = this.CurrentAutoScaleDimensions;
bool isVGA = currentScreen.Height == 192;

Возможно ли, что для isVGA может быть установлено значение false, даже если экран имеет VGA из-за неточности с плавающей точкой (свойство Height является плавающей точкой)?

1 Ответ

4 голосов
/ 01 октября 2010

Не в представленном вами примере, потому что (IEEE 754, 32-разрядные) числа с плавающей точкой могут точно представлять все целые числа (целые числа), абсолютное значение которых меньше или равно 2 ^ 24 .

...