signed + unsigned

Тема в разделе "WASM.BEGINNERS", создана пользователем STiven_Dedal, 2 май 2009.

  1. STiven_Dedal

    STiven_Dedal New Member

    Публикаций:
    0
    Регистрация:
    3 сен 2005
    Сообщения:
    5
    Привет всем
    Вопрос такой: Будет ли переносима функция

    unsigned int summ (int i, unsigned int u)
    {
    return i + u;
    }


    например: summ(5, -1)

    Рассуждаю так
    -1 приводится к unsigned, кодирование числа при этом не меняется, меняется его интерпретация компилятором: как был 0xFFFFFFFF, так и остался
    при сложении происходит переполнение и результат правильный, в примере 4
    Но все ведь это верно, только для процов у которых отрицательные числа кодируются в дополнении до двух

    просто нужно, что бы функция правильно отнимала при отрицательном параметре
    переносимостью я озаботился, просто "для порядку"