Есть строка
char buff[1024]; //1024
bsize = 3 // зависит от строки
Получает данные, в конец строки добавляю 0
// добавление завершающего нуля
buff[bsize] = 0;
Перевожу строку в string
string name = buff; // результат "hi"
Есть еще один string
String test = "hi";
Возникает вопрос почему, результат false? Если должно быть true
if(name == test) // Результат false
Вероятнее всего, в строку name попадают "непечатные" символы (типа \n, \r)
Проверьте равенство размеров строк (name.size() == test.size()) и если они не совпадают, выведите коды символов в строке name:
for (char x : name)
cout << int(x) << endl;
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники