Search
Write a publication
Pull to refresh

Comments 9

Всегда хотел научиться писать на C++
Подскажите, есть ли какие материалы, где можно постепенно, по шагам изучить минимальный "стек". Вот какой путь
1. Умею собирать и запускать std::cout << "Hello World!\n"; на Linux
2. Умею собирать open-source- проекты через make install
...
Я здесь :(
...
N-1. Умею выполнять кросс-компиляцию для SoC Type: MediaTek MT7620A Linux version 4.14.215 gcc version 7.5.0 OpenWrt 19.07.6
N. Собрал и запустил утилиту upload-a файлов из локальной папки на FTP-сервер

Так вам надо не учиться писать на С++, а учиться собирать чужие проекты. Это намного проще. Достаточно прочитать документацию по autotools, cmake, ninja, whatever... Будут возникать вопросы - задавайте на StackOverflow или в телеграм каналах.

Здоровая критика про пинг:

  • неплохо бы переменным sent, received присваивать начальные значения;

  • при разборе командной строки возможен крэш, если, например, указать ключ -с без числа. С остальными - аналогично;

  • если в командной строке указать несколько аргументов, но не указать destination, то может быть крэш по содержимому ip;

  • устанавливать опции сокета после отсылки каждого пакета? Может лучше один раз до всяких отсылок?

  • лучше добавить контроль результата при установке опций сокета - вдруг не установилось?

  • если при получении ответа пришло меньшее количество байт, то далее будет работа с мусорными (предыдущими) данными;

  • лучше не миксовать C подход (usleep, "\n") и C++ (chrono, endl);

  • в выводе help можно указать дефалтовые значения для параметров (10 пакетов и т.д.);

  • cout << "'####::'######::'##::::'##:'########::'##::::'##:'########:::'######::\n" - Э-э-э-м ... безымянная гордыня? Может лучше фамилия, имя, год создания?

Спасибо, исправлю в следующих коммитах

if (len & 1) {

Нечётный байт наголо добавляется в чексуму?

Простите! А где здесь C++? Все написано в сишном стиле. Мне кажется эту статью надо было определить в C, а не в C++ раздел.

Sign up to leave a comment.

Articles