Bonjour tout le monde,
J'essaie de lire des données dans un fichier txt, y stocker certains éléments dans des variables et d'autres dans un tableau.
Voici une ligne de mon fichier txt :
Les 3 premiers chiffres sont dans une variable, les 7 suivants dans une autre et les deux dernier dans une dernière variable.504-3116894-79 Patte Louise
Pour ce qui est du nom, j'aimerais le mettre dans un tableau.
J'utilise pour faire tout ça un fscan qui lit 3 entiers et ensuite un fgets pour lire la fin de la ligne.
Je n'ai aucun problème pour lire les entiers mais le nom du client pose problème.
Je récupère le nom du client dans une variable tampon, je veux ensuite transférer la valeur de cette mémoire tampon mais il me donne ce message d'erreur :
Voici le code de ma boucle for qui reprend le fscanf et le fgets :left operand must be l-value
Le problème provient de la dernière ligne :
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 for(Indice = 0; (Indice < Taille_Maximale)&&(fscanf(Fichier,"%ld-%ld-%ld",&type,&Numero,&check)==3) && (fgets(Nom,Taille_Maximale-1,Fichier)!=NULL); Indice++) { //printf("Nom %ld :\n",Indice+1,Nom); LongueurNumeroCompte(nombreType, nombreNumeroCompte, checkDigit,"Comptes.txt"); if((nombreType == 3)&&(nombreNumeroCompte == 7)&&(checkDigit == 2)) { if(CheckDuDigit(type,Numero,check)) { printf("compte numéro %ld : %ld-%ld-%ld\n",Indice+1,type,Numero,check); NumeroDeCompte[Indice].check = check; NumeroDeCompte[Indice].numero = Numero; NumeroDeCompte[Indice].type = type; NumeroDeCompte[Indice].Nom = Nom; } } }Est-ce que vous comprenez pourquoi ça ne fonctionne pas ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part NumeroDeCompte[Indice].Nom = Nom;
Je suis débutant en C.
Merci pour votre compréhension et pour votre aide.
beegees
Partager