Випадок 1:
#include <iostream>
int main()
{
double d = 15.50;
std::cout<<(d/0.0)<<std::endl;
}
Він збирається без жодних попереджень та відбитків inf
. ОК, C ++ може обробляти поділ на нуль ( дивіться це в прямому ефірі ).
Але,
Випадок 2:
#include <iostream>
int main()
{
double d = 15.50;
std::cout<<(d/0)<<std::endl;
}
Компілятор видає таке попередження ( дивіться його наживо ):
warning: division by zero [-Wdiv-by-zero]
std::cout<<(d/0)<<std::endl;
Чому компілятор дає попередження у другому випадку?
Є 0 != 0.0
?
Редагувати:
#include <iostream>
int main()
{
if(0 == 0.0)
std::cout<<"Same"<<std::endl;
else
std::cout<<"Not same"<<std::endl;
}
вихід:
Same