Фон: я получаю массив как char* как часть сеанса сокета. Теперь мы должны сопоставить токены (заголовки HTTP) из него. Код здесь в том, что мы создали UBYTE * и получили значение из массива символов после приведения типов с помощью UBYTE. Позже тот же указатель UBYTE мы передаем другой функции, которая принимает char* после приведения его типа к char*.
Проблема здесь в том, что это работает в сборке релиза, а не в сборке отладки (с -g и другой оптимизацией). Не только это добавление нескольких отпечатков в режиме отладки скрывает проблему.
Итак, мой вопрос здесь: в чем разница между указателем UByte (который по сути является беззнаковым символом) и указателем char. Замена UByte на char решает мою проблему во всех режимах, но у меня нет объяснения этому? Есть идеи ?