Bonjour tous,
avant de commencer
j'ai des structures de type
NPI vaut 64 au début du programme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 typedef struct { short x; short y; short z; } point; point *p ; point liste[NPI];
le programme sera porté sur des bécanes antiques (1973 à 1990) donc je dois
tester si la mémoire est suffisante au début du programme
je pensais à quelque chose du style :
déjà est ce que je commets des erreurs à ce niveau ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 int main(void) { if((p=malloc(sizeof(struc point) * NPI)) == NULL) { /* ne pas lancer */ fprintf(stderr,"\\nn\t%s\n\n", message(memoire)); exit(1); } /* sinon effectuer la reservation */ p=malloc(sizeof(struc point) * NPI); /* ici les traitements */ /* dont une boucle pour remplir les coordonnees*/ if (scanf(" %d %d %d", &p[i].x, &p[i].y, &p[i].z) == 3) { /* traitement normal */ scanf(" %d %d %d", &p[i].x, &p[i].y, &p[i].z); liste[i]=p; } else { /* erreur ! */ fprintf(stderr,"\\nn\t%s\n\n", message(saisie)); } /* fin de boucle des saisies*/
et surtout je compte proposer à l'utilisateur de traiter des coordonnées supplémentaires donc je devrai agrandir la liste[]
quelle est la syntaxe pour realloc sur la struct list[NPI] ?
devrai ne pas marcher je suppose ? alors comment le faire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part liste[] = ralloc (liste[], ((sizeof(strcut point) * nvl_taille));
merci
désolé pour les questions qui peuvent paraitre bêtes mais j'ai du mal à m'y remettre au C et les docs ne sont pas très claires voire existantes sur ce point précis.
Partager