Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Initialisation de structure [ Archives / Au secours ] (goutbouyo)

vendredi 12 novembre 2004 à 18:43:21 | Initialisation de structure

goutbouyo

Membre Club
Salut,

J'ai une structure temps:
struct temps
{
float time, elapsedTime, lastTime;
};


Je l'itinialise :

struct temps Time[2];


Donc ici, on pourras mettre Time[1] et Time[2].

Mais j'aimerais ne pas avoir à définir un nombre au départ car à l'initialisation je ne sais pas combien de structures temps j'aurai besoin.

Si je fais ça c'est bon ??? :

struct temps Time[];

vendredi 12 novembre 2004 à 19:15:57 | Re : Initialisation de structure

BruNews

Administrateur CodeS-SourceS
struct temps Time[2];

alors index maxi sera 1 et non 2.

si tu ne sais pas le nbr max alors alloc dynamique par malloc par exemple.

ciao...
BruNews, MVP VC++

vendredi 12 novembre 2004 à 19:17:05 | Re : Initialisation de structure

Arnaud16022

Membre Club
encore toi ? ;)

bon la je vois qu'on est exactement sur le meme pb.
perso j'ai fait 50 struct persos, 1000 struct batiments, 50 struct armes,....
ca marche mais il est édident que c'est loin d'etre optimisé ;)

je sé pas si ca marche mais vaudrait mieux faire un typedef devant ta def de struct, puis temps * Time;
la fudra allouer ta mem a chaque création d'un timer (dis c'est vraiment un timer que tu veux faire? je doute ;) )
Et ne pas oublier de 'freeer' la mem aussi... si toutefois c'est correct comme méthode :)

vendredi 12 novembre 2004 à 19:18:50 | Re : Initialisation de structure

Arnaud16022

Membre Club
ouah ben brunews a répondu en meme tps que moi ;)
c'est juste ce que j'ai dit?

vendredi 12 novembre 2004 à 19:28:41 | Re : Initialisation de structure

luhtor

Tient j'ai une question. Personnellement, je n'utilise que des classes. Point de vue optimisation, est-ce plus lent qu'une struct ?
Evidemment puisqu'il y a l'appelle du constructeur etc ... mais a part ca, l'acces au donné est le meme ?
Car je trouve la classe bien plus pratique que la struct, notament pour l'initialisation des données.

vendredi 12 novembre 2004 à 19:31:30 | Re : Initialisation de structure

Arnaud16022

Membre Club
heu...c'et quoi la différence entre class et struct a part que pour class ya tout en public par éfaut?

vendredi 12 novembre 2004 à 19:45:18 | Re : Initialisation de structure

BruNews

Administrateur CodeS-SourceS
serait pas le contraire, class tout private par defaut ?

ciao...
BruNews, MVP VC++

vendredi 12 novembre 2004 à 19:52:47 | Re : Initialisation de structure

vecchio56

Administrateur CodeS-SourceS
En effet tout en private dans une classe. Et puis la différence c'est que la classe n'existe pas en C.

vendredi 12 novembre 2004 à 20:03:51 | Re : Initialisation de structure

goutbouyo

Membre Club
Bizarre...

J'ai fais :
struct temps Time[2];

et j'utilise :
Time.lastTime[1]
et
Time.lastTime[2]
et ça marche ... pas de bugs.

Comment ça se fait ???

Ok je vais voir pour l'alloc dynamique.
Merci

vendredi 12 novembre 2004 à 20:14:23 | Re : Initialisation de structure

steve_clamage

En c++ il n'y a pas de structure, le mot clé struct désigne une classe dont l'accés aux attributs et l'héritage sont par défaut publique.

struct temps Time[2]; ce n'est pas une initialisation mais une instanciation.

Pour unitialiser une structure en C :

struct temps t = { 0.f, 0.f, 0.f };

la norme C99 autorise également

struct temps t = {.lastTime = 0.f };



1 2 3 4 5 6 7 8 9

Cette discussion est classé dans : code, temps, time, structure, initialisation


Répondre à ce message

Sujets en rapport avec ce message

Difference [ par xionoxid ] C'est koi la difference entre time (0) et time (NULL) les 2 font des nbr aleatoire !??#include #include #i erreur mémoire pour un décompte [ par yeager ] Bonjourj'ai fait un petit code pour lancer un programme toutes les 30 secondes.Lorsque je lance le débugger, ça marche nichel.Mais lorsque je lance le prog dans alt tab [ par leprov ] salut a tous.bon j'ai un bug avec mon prog, il apparait dans alt tab alors qu'il n'est pas dans la taskbar, donc je capte pas....si quelqu'un a du tem MFC mal vus ?? [ par li9 ] Salut ,je debute a peine le c++ (ca fait 10min lol)Je suis vraiment etonné de voir a quel point c'est différent du C# , j'ai tres souvent vu du code c RS232 [ par Steph115 ] Bonjour a tous,Je dois faire un projet en c++ sur une connexion en rs232 a un robot.En mode console je tape cela pour le faire marcher et envoyer un o Passer un code PERL en C++ [ par gaspard83 ] Bonjour à tous, J'ai trouvé un script Perl qui correspond à une recherche que je fais depuis un certain temps : passer du morse sur les leds du clavie release vs debug en asm !!!! [ par sajid_morad ] salut tout le monde, voulant optimisé une boucle qui prend un peu de temps je l ai réécri en asm, en effet j ai pu optimisé le temps en optimisant le Chronomètre fous! [ par malik7934 ] Je chronomètre une de mes fonctions et je me suis rendu compte d'un truc étrange: alors que je fais systématiquement les mêmes calculs d'une fois à l' Structures nommées incompréhensible ... à l'aide [ par otterc8 ] Bonjour, voila j'ai ce bout de code que je ne comprends pas top, malgré des recherches sur les structures, il y a des choses que je ne comprends pas! °'** Langage C **'° [ par while_stri ] Bonjour à tous. Je code un programme en C et j'utilise de nombreux pointeurs sur structure.  Lorsque je passe le pointeur dans un sous-programme et qu


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,967 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.