每天一点C语言

example1:

 1 #include <iostream>

 2 #include <cstdlib>

 3 using namespace std;

 4 

 5 int main ()

 6 {

 7     unsigned int a = 998;

 8     int b = -1;

 9     if ( a < b )

10     {

11         cout << "strange" << endl;

12     }

13     else if ( a > b )

14     {

15         cout << "normal" << endl;

16     }

17     else

18     {

19         cout << "impossible" << endl;

20     }

21     system("pause");

22     return 0;

23 }

解释:比较-1和998哪个数字更大,只是一个是有符号数,而另一个是无符号数。

结果:-1更大。。。

每天一点C语言

原因:有符号数和无符号数在进行比较时,有符号数会转化为无符号数,所以-1就变成了一个非常大的数字!

你可能感兴趣的:(C语言)