Imprimir líneas desde un archivo de texto en orden inverso

Estoy tratando de leer la Constitución como un archivo de texto desde la línea de comandos a mi progtwig para imprimir las líneas en orden inverso. Mi bucle for se parece a esto:

for(int i = 0; i >= 0; i--) { if(strings[i] == '\0') //counts through array until it finds a line break { break; } printf("%s", strings[i]); } 

Cuando se ejecuta el progtwig, lo único que se imprime es la primera línea de la Constitución. Si modifico mi bucle for para incrementar i, el progtwig se ejecuta sin problemas y genera la Constitución de forma normal, por lo que creo que todo el problema se resume en este bucle for. Este es el rest de mi progtwig para referencia.

 int clearBuffer() { char junk; while((junk = getchar()) != feof(stdin) && junk != '\n'); return 0; } int getAline(char ** bufferPointer, int * sizePointer){ char * buffer = *bufferPointer; int count = 0; int size = *sizePointer; while(!feof(stdin)){ if(count >= size - 1){ char * tempBuffer = (char * )malloc(size * 10); //strcpy(tempBuffer, buffer ); for (int i = 0; i = 0; i--) { if(strings[i] == '\0'){ break; } printf("%s", strings[i]); } return 0; } 

Haga que int i iguale el número de líneas en la Constitución en lugar de 0 que debería hacerlo.

Cuando invierte la dirección de iteración de un bucle, también tiene que invertir los valores iniciales y finales.

 for(int i = arrayCount-1; i >= 0; i--) 

Ahora, este bucle comienza al final, luego regresa al principio de la matriz.