он юзает команды strlen, strtok они нафиг не нужны ) зачем разбитвать строку на слова?
встретил цифру заменил ) встретил точку поставил перенос строки... все
buffer = (unsigned char * ) malloc(buflen); выделяем памяти под весь файл и туда считываем файл все... терь файл в памяти
побайтово движемся по памяти - файлу. если точка ставим перенос строки
если не точка
преобразовываем в цифру если от нуля до 9 то вместо этого пишем слово из массива num а если не цифра просто печатаем этот символ ) усе...
но я думаю можно круче сделать если напрямую указатель прибавлять ) тогда si не понадобится + можно еще несколько переменных убрать а то че они лишние хех