Estoy escribiendo un programa donde el rendimiento es bastante importante, pero no crítico. Actualmente estoy leyendo en texto de FILE*
línea por línea y uso fgets
para obtener cada línea. Después de usar algunas herramientas de rendimiento, descubrí que del 20% al 30% de las veces que se ejecuta mi aplicación, está dentro de fgets
.¿Lees una línea de entrada más rápido que fgets?
¿Hay formas más rápidas de obtener una línea de texto? Mi aplicación es de un solo subproceso sin intenciones de usar múltiples hilos. La entrada puede ser desde stdin o desde un archivo. Gracias por adelantado.
¿Cuál es la longitud promedio (y posible stdev) de las líneas que analiza su programa? Esto ayuda a determinar la forma más rápida de acceder a ellos. – Juliano
@Juliano, las líneas tienen siempre menos de 260 caracteres de longitud. Ya he evitado un ciclo de construcción de líneas. – dreamlax
¿Controla el formato de entrada? ¿Podrías hacerlo más compacto? – Dave