bonjour.
J'apprends le C, et j ai un probleme pour initialiser par le biais d'une fonction ma variable de structure.
Voila mon code source :
main.c
Code :
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #ifndef DEF_FONCTION_H
- #define DEF_FONCTION_H
- #include "fonction.h"
- #endif
- int main(int argc, char *argv[])
- {
- player player1;
- initialiser(&player1);
- printf("nom: %ls", player1.nom);
- return 0;
- }
|
fonction.c
Code :
- #ifndef DEF_FONCTION_H
- #define DEF_FONCTION_H
- #include "fonction.h"
- #endif
- void initialiser(player* point)
- {
- *point->nom = "abc" ; // LIGNE 10
- *point->prenom = "" ; // 11
- (*point).age = 21;
- *point->pays = "" ; // 13
- }
- fonction.h
- [cpp]
- typedef struct player player;
- struct player {
- char nom[50];
- char prenom[50];
- long age;
- char pays[70];
- };
- void initialiser(player* point);
|
En fait ca m'initialise l'age mais pas le nom prenom pays... les types char quoi.
quand j affiche l age ca marche (par exemple je met 17)
nom prenom... ca n'affiche rien.
En faisant rebuild j'ai ces messages d'erreur :
warning: assignment makes integer from pointer without a cast
ligne 10, 11 et 13 dans fonction.c
Je bloque là dessus et je ne trouve pas d'ou viens l'erreur..
Merci d'avance pour vos explications
Cordialement
Message édité par schtek2 le 01-11-2007 à 21:23:42