Я пишу программу, где исполнение очень важно, но не критично. В настоящее время я читаю текст из строки FILE*
, и я использую fgets
для получения каждой строки. После использования некоторых инструментов производительности я обнаружил, что в 20-30% случаев, когда приложение работает, оно находится внутри fgets
.Прочитайте строку ввода быстрее, чем fgets?
Существуют ли более быстрые способы получения строки текста? Мое приложение однопоточное, без намерений использовать несколько потоков. Вход может быть из stdin или из файла. Заранее спасибо.
Какова средняя длина (и возможная stdev) строк, которые ваша программа анализирует? Это помогает определить самый быстрый способ доступа к ним. – Juliano
@ Юлиано, линии всегда имеют длину менее 260 символов. Я уже избегал цикла построения линии. – dreamlax
Вы управляете форматом ввода? Не могли бы вы сделать его более компактным? – Dave