Erreur de initialisation de structure
Fermé
MissRobet
Messages postés
4
Date d'inscription
mercredi 14 novembre 2018
Statut
Membre
Dernière intervention
20 novembre 2018
-
20 nov. 2018 à 21:05
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 21 nov. 2018 à 15:14
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 21 nov. 2018 à 15:14
A voir également:
- Erreur de initialisation de structure
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 1001 outlook - Accueil - Bureautique
- Erreur de lecture reconnecté en 3s - Forum TV & Vidéo
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
2 réponses
Dalfab
Messages postés
706
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
2 novembre 2023
101
21 nov. 2018 à 08:19
21 nov. 2018 à 08:19
Bonjour,
Pour répondre, il faudrait surtout savoir comment tu as défini le type date.
Tu écris ensuite un tableau de 100 tableaux de 11 dates. On s'attend à fournir 100*11*3 paramètres du type des champs jour/mois/annee.
Pour un tableau de dates, on peut écrire :
Pour répondre, il faudrait surtout savoir comment tu as défini le type date.
Tu écris ensuite un tableau de 100 tableaux de 11 dates. On s'attend à fournir 100*11*3 paramètres du type des champs jour/mois/annee.
Pour un tableau de dates, on peut écrire :
struct date { unsigned char jour; // par exemple unsigned char mois; unsigned short annee; }; struct date tableau[3] = {{20,2,2015},{31,12,2016},{1,1,2017}};
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié le 21 nov. 2018 à 15:18
Modifié le 21 nov. 2018 à 15:18
Salut MissRobet,
1.
Si tu dois comparer les dates, tu pourrais avoir intérêt à les stocker sous forme de tableau de chaînes de caractères au format "2015/02/20", c'est à dire année, mois, jour dans cet ordre. Cela te permet de comparer très simplement l'égalité de dates, ou le fait qu'une date soit antérieure ou postérieure à l'autre avec la fonction
vois : https://en.cppreference.com/w/c/string/byte/strcmp
2.
Si tu veux pouvoir faire des choses plus complexes, comme calculer la différence entre deux dates, tu devrais utiliser les fonctions accessibles dans
Avec les fonctions accessibles dans
dans ce dernier cas :
- un stockage dans sous forme numérique comme proposé par Dalfab serait plus adéquat avec un tableau de struc contenant les informations de jour, mois et année sous forme d'entiers,
- ou carrément tu pourrais stocker les dates dans un tableau de
vois : https://en.cppreference.com/w/c/chrono
1.
Si tu dois comparer les dates, tu pourrais avoir intérêt à les stocker sous forme de tableau de chaînes de caractères au format "2015/02/20", c'est à dire année, mois, jour dans cet ordre. Cela te permet de comparer très simplement l'égalité de dates, ou le fait qu'une date soit antérieure ou postérieure à l'autre avec la fonction
strcmp()accessible par
string.h, car la comparaison lexicographique équivaut dans ce format à la comparaison de la chronologie des dates.
vois : https://en.cppreference.com/w/c/string/byte/strcmp
2.
Si tu veux pouvoir faire des choses plus complexes, comme calculer la différence entre deux dates, tu devrais utiliser les fonctions accessibles dans
time.hpour convertir tes dates en
time_tet utiliser
difftime()...
Avec les fonctions accessibles dans
time.h, tu pourras aussi déterminer le jour de la semaine, le numéro de semaine, vérifier si une date est valide, etc.
dans ce dernier cas :
- un stockage dans sous forme numérique comme proposé par Dalfab serait plus adéquat avec un tableau de struc contenant les informations de jour, mois et année sous forme d'entiers,
- ou carrément tu pourrais stocker les dates dans un tableau de
time_t, en y stockant la conversion de ces informations (tu dois passer par une
struct tmet utiliser
mktime()) ...
vois : https://en.cppreference.com/w/c/chrono