С++ бесконечность. Как написать на с++ if k=бесконечности???

01.01.2001

С++ бесконечность. Как написать на с++ if k=бесконечности???

  • нафига тебе в с++ бесконечность? конкретный пример приведи. может тебе нужно бесконечный цикл организовать?
  • никак
  • Ну вообще-то бесконечность даже в математике не равна другой бесконечности) Так что не понимаю, что именно ты хочешь сравнивать и зачем)
  • интересно... Думаю компилятор не понимает бесконечность. Ну если она нужно, то не проще зациклить программу, хотя какой толк будет ?!

  • Переменная не может быть равна бесконечности. Бесконечность это число, которое постоянно растет, уменьшается или стремится, оно не постоянное. Присвоить его нельзя.
    Ты, наверное, хочешь создать бесконечный цикл, делается это так:
    do {} while(1) или for(i=0;i!=1;){}
  • Никак. Бесконечность - не число.
    P.S. Хотя.. . можно :)
    if(k==1./0)...
  • Очень просто, если тип данных k поддерживает значение бесконечности (проверить можно с помощью std::numeric_limits::has_infinity): сравнивать с std::numeric_limits::infinity().

    Сложнее, если тип не поддерживает значение бесконечности. Тогда два варианта:

    1. Написать тип, который поддерживает значение бесконечности, и пользоваться им (не забудь только специализировать numeric_limits для этого типа) .

    2. Выделить в качестве значения бесконечности любое значение и сравнивать с ним; например, для int можно воспользоваться std::numeric_limits::max().

Вас заинтересует