How to divide by zero without error

随声附和 提交于 2020-01-03 09:46:17

问题


i need to obtain float NaN and infinity, but i can't use such constructions

0. / 0.
1. / 0.

because it cause compile time

error C2124: divide or mod by zero

EDIT, it is cool to have answers for where i can get this numbers (+1 for every), but is it possible to divide by zero?


回答1:


You can simply return a NaN or an infinity, for example:

return std::numeric_limits<float>::quiet_NaN();

or

return std::numeric_limits<float>::infinity();

See std::numeric_limits, from header <limits>.




回答2:


Use std::numeric_limits::infinity() and std::numeric_limits::quiet_NaN() or std::numeric_limits::signaling_NaN() from <limits>.



来源:https://stackoverflow.com/questions/17001417/how-to-divide-by-zero-without-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!