devalone, ну, и? Сирена в голове от этого не включается?:
If the end of the source C string (which is signaled by a null-character) is found before num characters have been copied, destination is padded with zeros until a total of num characters have been written to it.
No null-character is implicitly appended at the end of destination if source is longer than num. Thus, in this case, destination shall not be considered a null terminated C string (reading it as such would overflow).
m_str = new char[strlen(str.m_str)]; HentaiEtoIskusstvo, вот это тоже надо будет поправить, если соберёшься добавлять 0 в конец.
А вообще, если уж ты всё равно хочешь скопировать всю строку, есть strdup для этого.
D0ct0r_Murder, я за тебя очень рад. Чтобы разобраться с этими ошибками тебе придётся выяснить, зачем нужны и как и где определены все слова которые ты понатащил в этот исходник.
Если у вас порт меньше 1024 то никак, только рут может занимать эти порты
Не совсем верно. Любой процесс с привилегией CAP_NET_BIND_SERVICE может их занимать. Привилегию можно унаследовать от процесса-родителя или получить вместе с исполняемым файлом. См. setcap.
это указатель на void, а не на функцию, без явного приведения типов присвоить ему адрес функции не получится
devalone, указателю на void можно присвоить значение любого другого указателя, как в C, так и в С++. В С ещё можно и наоборот -- любому указателю можно присвоить значение указателя на void.
...только в этой статье не написано, как его расширить. Только сузить (неправильно, но в статье об этом хотя бы сказано) и переместить. Ну, конечно, можно попробовать умножение, но случайных чисел от этого не станет больше, просто некоторые значения из расширенного диапазона никогда не будут сгенерированы.