Devo contare quanti elementi, precisamente numeri, ci sono all'interno del file.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void array()
{
	int lunghezza = 0, i = 0;
	char buf[200];
	char *str;
	FILE *f = fopen("/home/davide/Scrivania/Esercizio 8/array.txt", "r");
	
	if(f == NULL) printf("Errore nell'apertura del file.\n");
	else
	{
		while(!feof(f))
		{
			str = fgets(buf, 200, f);
			while(str[i] != '\0')
			{
				if(str[i] == ' ')
					lunghezza++;
				i++;
			}
			lunghezza = lunghezza + 1;//In una stringa di numeri, separati ognuno
			     //da uno spazio, gli elementi della stinga sono
			     //n spazi + 1
		}
		printf("Lunghezza: %d\n", lunghezza);
	}
}
Però, c'è qualcosa che non va.
Ad esempio, nel mio caso, il file è:
1 2
3 4
5 6
7 8
9 0
1 2
3 4
6 7
1 2
6 5
Se andassi a stampare dovrebbe tornarmi 20, perché appunto sono venti numeri. Ma, a me, stampa 11. Perché?
Grazie