Convertir char en int
Résolu
alfonsomido
Messages postés
5
Statut
Membre
-
alfonsomido Messages postés 5 Statut Membre -
alfonsomido Messages postés 5 Statut Membre -
salut, je ne sais pas comment convertir une date de naissance de type chaine de caractéres (par ex: 23/07/1985) en un entier qui prend que l'année(exp: 1985). cette tache est pour calculer l'age d'une personne en sachant sa date de naissance qui est de type char. J'espere que vous m'aidez.Merci beaucoup à vous tous.
A voir également:
- Convertir char en int
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Convertir epub en kindle - Guide
- Convertir kindle en epub - Guide
- Convertir audio en texte word - Guide
- Convertir youtube en mp3 avec audacity - Guide
4 réponses
Tu le rentres dans un tableau temp
char date[20]; char temp[20]; int i; /* date contient XX/XX/XXXX */ for(i=6;i<10;i++) temp[i-6]=date[i]; printf("%i\n",atoi(temp));
Salut,
Comme le dit Andejen il faut utiliser la fonction atoi qui convertit un char en int. Cependant il te faut d'abord isoler l'année pour faire cela. Et pour cela une question :
Est-ce un format XX/XX/XXXX ou X/X/XXXX ? En gros est-ce qu'il y a un 0 devant si c est jours/mois à un chiffre ? 2/2/19XX ou 02/02/19XX ?
1er cas, il faut couper avec une détection du 2e '/'
2e cas, il suffit de reprendre la chaine à partir du caractère [6] (le 7e)
Bon courage
Comme le dit Andejen il faut utiliser la fonction atoi qui convertit un char en int. Cependant il te faut d'abord isoler l'année pour faire cela. Et pour cela une question :
Est-ce un format XX/XX/XXXX ou X/X/XXXX ? En gros est-ce qu'il y a un 0 devant si c est jours/mois à un chiffre ? 2/2/19XX ou 02/02/19XX ?
1er cas, il faut couper avec une détection du 2e '/'
2e cas, il suffit de reprendre la chaine à partir du caractère [6] (le 7e)
Bon courage