Ваш код не шифрует файлы, а стирает их. Один и тот же путь дважды подряд открывается с параметрами "wb", хрень какая-то. Нужно 1) открыть файл по "rb" 2) считать файл в буфер 3) закрыть файл 4) зашифровать буфер 5) открыть целевой файл по "wb" 6) записать зашифрованные данные 7) закрыть целевой файл
TrackFox: повербанка по ссылке хватит на 4-5 полных зарядок. По параметрам подходит QIDIAN QD-188-ALT, 2-3 полных зарядок будет, если купить нормальные аккумуляторы вроде LG INR18650-MJ1 3500mAh
abcd0x00: я указал в комментарии (см ниже), что так делать не стоит и нужно передавать данные структурой в унифицированном формате.
На x86 машинах будет int 32 бита, little endian. Если big endian я еще видел в powerPC, то 16-битный int вживую не встречал - подскажите, где его можно увидеть? :) (А вот с long проблема была, на линуксе он 64 бита оказался, забывать о такой возможности нельзя)
Я на линуксовом сервере запускал OpenVPN, SSH и сайт, все на 443 порту при помощи сторонней программы, которая это разруливала, работало. Может и здесь что-то подобное
Александр: Александр: не бред, а ./ в начале пути означает текущую папку. Конечно в текущей папке нет папки home
Ну раз показывает, что он есть в /root/server, так и пишите /root/server/file.bin
Если речь про современный ПК, то у него есть оперативная память (RAM) и контроллер для работы с ней. Физически ячейка памяти это всего один бит, но для процессора работа с памятью выполняется по 8, 16, 32 и 64 бита. То есть чтение и запись таких "больших" ячеек может быть произведена за одну команду.
xmoonlight: но пример хороший. char ** s указывает на массив из char *, по каждому из которых находится строка. Двумерная таблица с строками произвольной длины.
но обычно передают не отдельные значения, а какой-нибудь буфер, предварительно сформировав "сообщение". вызов send и recv довольно затратен, эффективнее собрать всё, что нужно отправить в один массив данных, а потом всё разом отправить.
например, отправка и приём текста (с длиной в начале):