Пользуемся getchar
(fgetc
) и putchar
.
Также multithread-unsafe версия getchar_unlocked
и putchar_unlocked
, которая может быть быстрее в 10 раз.
Пример посимвольного копирования:
int c; // int, чтобы можно было отличать EOF
while ((c = getchar_unlocked()) != EOF) {
putchar_unlocked(c);
}
Смотреть здесь.
TODO: GNU Toolchain, etc...
Проверить программу на утечки волгриндом:
valgrind --leak-check=full ./a.out
TODO: санитайзеры
hexdump -C dostext.c
vi, nano, tmux, mc
Основное здесь.
Главное - отступ 4 пробела, никаких табов.
struct Foo
{
int bar;
};
int *p;
char *str, **pstr;
TODO: сделать конфиг для cpplint, и выложить .vscode