Ciao a tutti, in un esercizio mi si chiede di scrivere un programma che legge continuamente dallo standard input righe di testo terminate da \n, e far terminare il programma quando inserisco una riga vuota.
Cercando informazioni ho trovato che per leggere righe di testo posso usare la funzione
codice:
fgets(destinazione, dimensione, stdin)
che mi sembra di aver capito legge stringhe digitate da tastiera della dimensione massima di "dimensione" e la salva in "destinazione" terminando ogni stringa con \n.
Quello che non mi è chiaro è come far riconoscere la stringa vuota e quindi far terminare il programma.
Quello che ho provato a scrivere è questo:
codice:
#include <stdio.h>
#define BUFFER_LENGTH 255
int main(int argc, char *argv[]) {
char buffer[BUFFER_LENGTH];
while(buffer!=NULL){
fgets(buffer, BUFFER_LENGTH, stdin);
}
return 0;
}
ma sia con NULL che con "" non esce dal while.
Mi potreste dare una mano?
Grazie mille