Initialiser tous les éléments d'une structure

Résolu
cs_psycomel Messages postés 128 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 24 octobre 2006 - 11 janv. 2005 à 10:10
cs_psycomel Messages postés 128 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 24 octobre 2006 - 10 févr. 2005 à 09:27
Bonjour,
ya -t-il une methode qui permet d'initialiser tous les éléments d'une structure ?

Jaimerais dans ce cas précis initialiser tous les membres de ma structure à zero et j'aimerais bien éviter de les écrire un par un. Alors si une boucle est connue, basée dans le type structure, en permettant de parcourir les éléments un à un, jaimerais bien connaître.;

Merci beaucoup d'avance

4 réponses

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
11 janv. 2005 à 10:40
struct MyStruct
{
...
}

2 possibiltés :

-lors de la déclaration
MyStruct m = {0};

- en cours de prog :
memset(&m, 0, sizeof(MyStruct);
3
cs_psycomel Messages postés 128 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 24 octobre 2006
11 janv. 2005 à 11:40
aparement 'm' serait l'instance de la structure donc si j'ai bien compris,

le fait de faire : memset(&m, 0, sizeof(MyStruct); réinitialise -t-il tous les éléments et cela sans faire de boucle ?
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
11 janv. 2005 à 14:17
memset est une boucle sur les octets de la structures pour leur donner la valeur 0.
0
cs_psycomel Messages postés 128 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 24 octobre 2006
10 févr. 2005 à 09:27
Merci beaucoup pour ta réponse :
memset(&m, 0, sizeof(MyStruct);

J'attendais d'avoir une structure composée de plusieurs types différents pour valider ta réponse.
0
Rejoignez-nous