Erreur convertion chaîne (C)
Résolu
cap'tain sheeps
Messages postés
447
Date d'inscription
Statut
Membre
Dernière intervention
-
cap'tain sheeps Messages postés 447 Date d'inscription Statut Membre Dernière intervention -
cap'tain sheeps Messages postés 447 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je requiert votre aide pour une erreur qui m'est incompréhensible :
La ligne de code :
Me renvoie l'erreur suivante :
Comment deux éléments d'un tableau peuvent-ils être d'un type différent? Ou alors c'est la fonction qui renvoie une type différent?
Mais surtout comment résoudre cette erreur?
Merci d'avance,
Sheeps.
Je requiert votre aide pour une erreur qui m'est incompréhensible :
La ligne de code :
tableauConnections[i].contact = strdup(tableauConnections[nbnbnb +1].contact);
Me renvoie l'erreur suivante :
generateur.cpp|294|error: incompatible types in assignment of 'char*' to 'char [20]'|
Comment deux éléments d'un tableau peuvent-ils être d'un type différent? Ou alors c'est la fonction qui renvoie une type différent?
Mais surtout comment résoudre cette erreur?
Merci d'avance,
Sheeps.
A voir également:
- Erreur convertion chaîne (C)
- Chaine tnt gratuite sur mobile - Guide
- Plus de chaine tv - Guide
- Chaine musique bouygues - Accueil - Guide TV et vidéo
- L'équipe live foot chaine - Accueil - TV & Vidéo
- Erreur 0x80070643 - Accueil - Windows
2 réponses
Bonjour
Ce ne sont pas deux éléments d'un tableau qui sont de type différent.
D'un côté, tu as un élément d'un tableau
De l'autre, ce que te renvoie strdup, c'est à dire un char * (regarde la définition de strdup). Si l'élément de tableau est un char[20], c'est totalement inenvisageable de mettre dedans un pointeur.
Je suppose qu'en fait tu voulais recopier un élément de tableau dans un autre : ce n'est pas le rôle de strdup. Je crois que tu aurais dû faire :
Ce ne sont pas deux éléments d'un tableau qui sont de type différent.
D'un côté, tu as un élément d'un tableau
De l'autre, ce que te renvoie strdup, c'est à dire un char * (regarde la définition de strdup). Si l'élément de tableau est un char[20], c'est totalement inenvisageable de mettre dedans un pointeur.
Je suppose qu'en fait tu voulais recopier un élément de tableau dans un autre : ce n'est pas le rôle de strdup. Je crois que tu aurais dû faire :
strncpy(tableauConnections[i].contact ,tableauConnections[nbnbnb +1].contact,sizeof(tableauConnections[i].contact));