Ringrazio tutti due. Io avevo QUASI risolto così (anche se sicuramente le vostre soluzioni sono migliori e funzionano).
codice:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(int argc, char* argv[])
{
FILE *fp;
char stringa[] = "ciao\n";
int cont=0, i;
char ch;
char s_contatore[10];
/* inizializzazione file */
fp = fopen("prova.txt", "w");
fprintf(fp, "%d\n", cont);
fclose(fp);
/* aggiunta nuova stringa e aggiornamento contatore stringhe presenti nel file */
fp=fopen("prova.txt", "a");
fputs(stringa, fp);
rewind(fp);
i = 0;
while( ((ch = fgetc(fp)) != '\n') && (i < 10) )
{
s_contatore[i] = ch;
i++;
}
s_contatore[i] = '\0';
cont = atoi(s_contatore);
printf("%d", cont);
cont++;
rewind(fp);
fprintf(fp, "%d\n", cont);
fclose(fp);
return 0;
}
In questo codice c'è comunque ancora il problema fatto notare da andbin (quello della rewind).
Proverò uno dei vostri suggerimenti.
Vi ringrazio ancora.