Initialiser tous les éléments d'une structure [Résolu]

cs_psycomel 129 Messages postés lundi 17 février 2003Date d'inscription 24 octobre 2006 Dernière intervention - 11 janv. 2005 à 10:10 - Dernière réponse : cs_psycomel 129 Messages postés lundi 17 février 2003Date d'inscription 24 octobre 2006 Dernière intervention
- 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
Afficher la suite 

4 réponses

Répondre au sujet
ymca2003 2070 Messages postés mardi 22 avril 2003Date d'inscription 3 juillet 2006 Dernière intervention - 11 janv. 2005 à 10:40
+3
Utile
struct MyStruct
{
...
}

2 possibiltés :

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

- en cours de prog :
memset(&m, 0, sizeof(MyStruct);
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ymca2003
cs_psycomel 129 Messages postés lundi 17 février 2003Date d'inscription 24 octobre 2006 Dernière intervention - 11 janv. 2005 à 11:40
0
Utile
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 ?
Commenter la réponse de cs_psycomel
ymca2003 2070 Messages postés mardi 22 avril 2003Date d'inscription 3 juillet 2006 Dernière intervention - 11 janv. 2005 à 14:17
0
Utile
memset est une boucle sur les octets de la structures pour leur donner la valeur 0.
Commenter la réponse de ymca2003
cs_psycomel 129 Messages postés lundi 17 février 2003Date d'inscription 24 octobre 2006 Dernière intervention - 10 févr. 2005 à 09:27
0
Utile
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.
Commenter la réponse de cs_psycomel

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.