Utiliser fseek (langage C)
0nn2belle
Messages postés
17
Statut
Membre
-
0nn2belle Messages postés 17 Statut Membre -
0nn2belle Messages postés 17 Statut Membre -
Salut tout le monde,
Voilà, j'ai deux problèmes mais je pense que les deux peuvent être résolus avec le fseek !
Je vous expose donc mon premier problème :
J'ai une chaîne de 20 caractères, comme je ne peux pas bloquer mon curseur au bout de 20 caractères en langage C, j'aimerai positionner mon curseur au 20ème caractère grâce à fseek et supprimer tous les caractères, s'il y en a, après ce 20ème caractère.
Voici mon code pour la saisie du nom :
Ensuite voici mon deuxième problème :
J'ai une liste de numéros de portable de la forme suivante dans un fichier .txt :
0600112233
0644556677
0688990011
etc.
Et j'aimerai recréer un fichier texte qui insère un point-virgule (;) entre chaque numéro en supprimant le retour à la ligne. Aussi il arrive que j'ai quelques erreurs du type :
0600112233
06445677
0688990011
Donc comment faire pour gérer ces erreurs (c'est à dire supprimer ce numéro de portable quand il mesure moins de 10 chiffres) ?
Merci d'avance
@nn@belle
Voilà, j'ai deux problèmes mais je pense que les deux peuvent être résolus avec le fseek !
Je vous expose donc mon premier problème :
J'ai une chaîne de 20 caractères, comme je ne peux pas bloquer mon curseur au bout de 20 caractères en langage C, j'aimerai positionner mon curseur au 20ème caractère grâce à fseek et supprimer tous les caractères, s'il y en a, après ce 20ème caractère.
Voici mon code pour la saisie du nom :
typedef struct equipe//Redéfinit le type de structure pour chaque fonction
{
char nom[20];
char race[20];
char metier[20];
float pv;
int pvmax;
int atq;
int pouvoir;
}tableau;
void saisir_nom(struct equipe* gpe_allie,struct equipe* gpe_ennemi)//Permet la saisie de caractère et ne renvoie rien
{
int i = 0;//Initialisation pour les 5 personnages
printf("Bienvenue, veuillez entrer le nom de chaque combattant (sans espace)\n");
printf("Tout d'abord les Allies :\n");
while (i<5)//On réitère l'opération 5 fois
{
printf("Allie %d :",i);
scanf("%s", gpe_allie[i].nom);
fflush(stdin);
i++;
}
printf("\n");
i = 0;
while (i<5)
{
printf("Ennemi %d :",i);
scanf("%s", gpe_ennemi[i].nom);
fflush(stdin);
i++;
}
}
Ensuite voici mon deuxième problème :
J'ai une liste de numéros de portable de la forme suivante dans un fichier .txt :
0600112233
0644556677
0688990011
etc.
Et j'aimerai recréer un fichier texte qui insère un point-virgule (;) entre chaque numéro en supprimant le retour à la ligne. Aussi il arrive que j'ai quelques erreurs du type :
0600112233
06445677
0688990011
Donc comment faire pour gérer ces erreurs (c'est à dire supprimer ce numéro de portable quand il mesure moins de 10 chiffres) ?
Merci d'avance
@nn@belle
A voir également:
- Utiliser fseek (langage C)
- Langage ascii - Guide
- Comment utiliser chromecast sur tv - Guide
- Utiliser iphone comme webcam - Guide
- Langage binaire - Guide
- Utiliser tablette comme deuxieme ecran - Guide