Android не любит мой сервер, использующий fprintf

У меня есть устройство, выступающее в роли сервера. Это прошивка написана на C и использует сотовый модем для связи с клиентами. Все работало с клиентом.NET на ПК, когда мне было поручено написать клиент для Android Java.

Ответ на одну функцию, когда клиент запрашивает некоторые данные:

fprintf(MODEM, "@%s%02X", cBuffer, modem_getChecksum(cBuffer));
fputc(13, MODEM);

Но Android-устройствам это не нравится, и они просто ожидают ответа. После нескольких изменений я обнаружил, что это работает как с.NET, так и с Java:

sprintf(tBuffer, "@%s%02X", cBuffer, modem_getChecksum(cBuffer));
fputs(tBuffer, MODEM);
fputc(13, MODEM);

У меня вопрос ПОЧЕМУ? В чем разница? Кстати, cBuffer - это 80 символов ASCII.

0 ответов

Другие вопросы по тегам