Structures - prob d'execution !!
Résolu/Fermé
A voir également:
- Structures - prob d'execution !!
- Au démarrage de l’ordinateur, le d' se lance. il permet l’exécution des logiciels applicatifs et gère l’utilisation des ressources matérielles (mémoire, processeur, périphériques). - Forum Windows 10
- Erreur d'execution 1004 ✓ - Forum Excel
- Erreur d'exécution 13 incompatibilité de type ✓ - Forum Programmation
- Net user des erreurs ont affecté l'exécution de la commande - Forum Windows
- Erreur d'éxecution 1004 - Forum Programmation
1 réponse
Utilisateur anonyme
3 déc. 2013 à 08:28
3 déc. 2013 à 08:28
Bonjour
Il FAUT réserver la mémoire correspondant à la structure, soit en définissant un variable Point (sans *) et en faisant pointer ton pointeur sur cette variable, soit avec un malloc :
Point *point;Avec ça, tu définis un pointeur sur une structure, c'est à dire une variable qui contient l'adresse d'une structure. Mais tu n'as pas défini de variable structure, donc ton pointeur pointe n'importe où dans la mémoire. Dès que tu essayes de t'en servir avec
point->x = 0.0;, tu vas taper n'importe où dans la mémoire et le programme plante.
Il FAUT réserver la mémoire correspondant à la structure, soit en définissant un variable Point (sans *) et en faisant pointer ton pointeur sur cette variable, soit avec un malloc :
... int main() { Point *point; Point p; // on crée une variable de type Point point = &p; // on fait pointer point sur p point->x = 0.0; // ou p.x=0.0; ce serait la même chose ... </code c> ou bien <code>int main() { Point *point; point = (Point *) malloc(sizeof(Point)); // on alloue de la mémoire pour un Point point->x = 0.0; ... // sans oublier à la fin : free(point); // on désalloue la mémoire ...
3 déc. 2013 à 09:19
3 déc. 2013 à 15:04
3 déc. 2013 à 15:05