std::byte. И от new wchar_t[len] стоит тоже отказаться в пользу std::vector<std::byte>.ZeroMemory(data, len) делает фиктивную работу - только время тратит, т.к. следом буфер перезаписывается из файла.ZeroMemory зануляет только половину буфера, т.к. параметр длины задается в байтах, а буфер у тебя из двухбайтовых.std::vector<std::byte> ReadImage( const std::wstring_view file_path ) является более осмысленной. Слово Load - это загрузка, в отношении файлов применяется к загрузке готового формата данных. Read - простое чтение данных без разбора формата. Собственно формат у тебя не разбирается, поэтому и не Load. Результатом является блок байт с известной длиной, т.е. просто будет возвращено содержимое файла. file_path однозначно говорит, откуда будет прочитан результат, константность говорит о том, что file_path в функции используется как есть и, стало быть, функция является чистой.char, то это строка в ASCII. Если тип - wchar_t, то это строка в UTF-16/UCS2. Если буфер должен содержать сырые произвольные данные, то его тип будет std::byte.std::vector, или - std::array, или - std::span. Иначе это будет бессмысленный блок памяти, в который требуется внести смысл - т.е. переписать на осмысленный код.как отправить post запросом картинку или любой другой файл через wininet
wchar_t? n надо настолько иначе инициализировать, что переписать надо вообще весь этот код.double h = 1 / n; будет или 0, или 1.n не инициализирована и содержит мусор, а деление тут целочисленное, 1 в результате этого деления получится только тогда, когда n по воле электронного случая будет содержать 1.n по воле электронного случая будет содержать 0.double U[n], A[n] , B[n], C[n];n у тебя мусор, твоя программа имеет все шансы с разбегу получить Stack Overflow в любом из запусков.x[n] = 100;x и залез куда-то в другую переменную. Скорее всего в C[0]. qsort говорит что компаратор должен иметь следующую сигнатуру:int cmp(const void *a, const void *b);qsort.qsort должен дать ответ в троичном представлении, т.е. одно из значений: -1 если left меньше right, 0 если left и right эквивалентны, 1 если left больше right.bool позволяет только бинарное представление. Применение типа bool здесь - это ошибка.std::sort. Использование этой функции заставит тебя написать компаратор правильно:const bool cmp( const s& left, const s& right )
{
if( left.bali != right.bali )
{
return left.bali > right.bali;
}
return left.name < right.name;
} заранее говорю
Компоратор я сам уже написал