[Sorting] floating point auto-increment trap

Source: Internet
Author: User

1. ++ -- applicable to floating point numbers

2. Do not actually use floating point ++ --

Floating point numbers, including float, double, and long double, are all approximately stored.
Therefore, the value of each floating point is not accurate.
Therefore, if auto-increment is used in some special cases
The approximate value of A is equivalent to that of a + 1.
That is, auto-increment has no effect.

If it is used in a loop, it may lead to an endless loop.
# Include <stdio. h> int main (void) {// your code goes here float F = 88888888.5; F ++; printf ("% F", f); // 88888888.000000 return 0 ;}
 
The auto-increment and auto-increment of double data have no significance. The auto-increment and auto-increment of integer data can be completed by only one instruction, and the execution efficiency is very high. Floating Point Numbers are complex. It is impossible for a single command to perform auto-increment and auto-subtraction. Therefore, the execution efficiency cannot be improved.


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.