Цитата(aaarrr @ Apr 18 2014, 16:06)

Сначала надо определиться, что именно здесь некрасиво и неправильно. Я, например, не вижу проблем.
проблема в том, что буфер объявлен как глобальный в одном модуле proc.c, а в другом модуле main.c происходит его чтение, и там он объявлен как extern buf
ну и собственно глобальные переменные - это не правильно.
Разве нет?