J'ai ecrit une fonction qui va lire dans un fichier un nombre, puis l'incrémente et met à jour le fichier avec ce nouveau chiffre.
Clairement, ça me permet d'avoir une fonction d'incrémentation qui stok en dur le dernier nombre.

Voilà ce que ça donne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
long Increment(char const * const filename)
{
	FILE *myFile;
	long myCount = 0;
	char msg[512];
 
 
	myFile = fopen(filename, "r");
	if (myFile != NULL) 
	{
		fseek( myFile, 0, SEEK_SET);
		fgets( msg, sizeof(msg), myFile);
		if(msg!=NULL)
		{
			// string to long
			sscanf(msg, "%d", &myCount);
		}
		fclose(myFile);
	}
 
	myCount++;
 
	// long to string
	sprintf(msg, "%d", myCount);
 
	myFile = fopen(filename, "w");
	if (myFile != NULL) 
	{
		fwrite(msg, strlen(msg), 1, myFile);
		fclose(myFile);
	}
 
 	free(msg);
 
	return myCount;
 
}
Avez-vous des suggestions pour simplifier le schmilblick ?