Serveur-client
Résolu
STamait
Messages postés
24
Date d'inscription
Statut
Membre
Dernière intervention
-
poparnassus Messages postés 426 Date d'inscription Statut Membre Dernière intervention -
poparnassus Messages postés 426 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je travaille sur un projet de réseau qui contient client-serveur avec le langage C,mon problème est que je veux envoyer un tableau depuis le serveur vers le client en utilisant un socket, j'ai déjà essayer en utilisant le code ci-dessous mais le terminal m'affiche toujours un erreur dans la ligne 3:
Merci de m'aider si vous avez un solution, car cela ca fait parti d'un grand projet en réseau.
Je travaille sur un projet de réseau qui contient client-serveur avec le langage C,mon problème est que je veux envoyer un tableau depuis le serveur vers le client en utilisant un socket, j'ai déjà essayer en utilisant le code ci-dessous mais le terminal m'affiche toujours un erreur dans la ligne 3:
//Initialisation de la carte à envoyer au client memset (buf, 0, 80); buf = init_carte (tab, per); //sprintf(buf, "%d", init); write (s_dial, buf, strlen (buf)); printf ("J'ai envoye [%c] au client\n", buf) ; init carte: retourne une carte sous forme d'un tableau buf:bbuufer que j'utilise pour transmettre le tableau au client voila l'erreur sur le terminal serveur_tcp_simple.c:50:6: error: assignment to expression with array type buf = init_carte (tab, per);
Merci de m'aider si vous avez un solution, car cela ca fait parti d'un grand projet en réseau.
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Assignment to expression with array type
- Cybera client - Télécharger - Divers Réseau & Wi-Fi
- Changer serveur dns - Guide
- Filezilla client - Télécharger - Téléchargement & Transfert
- Filezilla client ou serveur ✓ - Forum Réseau
- Formate pour taxer client frigo vide ✓ - Forum Matériel & Système
2 réponses
Bonjour, d'après ce que je comprend, tu cherche à mettre un tableau dans un buffer avec la ligne buf = init_carte (tab, per);
La ligne serveur_tcp_simple.c:50:6: error: assignment to expression with array type
veut dire qu'il n'arrive pas à ranger un tableau dans buf.
Il faut le faire manuellement avec une étape intermédiaire.
Range le contenu de init_carte(tab,per) dans un tableau.
Ensuite, fait une boucle pour parcourir le tableau, et pour chaque élément, ajoute le à la suite du buffer. Je te laisse trouver la logique.
Bon courage
La ligne serveur_tcp_simple.c:50:6: error: assignment to expression with array type
veut dire qu'il n'arrive pas à ranger un tableau dans buf.
Il faut le faire manuellement avec une étape intermédiaire.
Range le contenu de init_carte(tab,per) dans un tableau.
Ensuite, fait une boucle pour parcourir le tableau, et pour chaque élément, ajoute le à la suite du buffer. Je te laisse trouver la logique.
Bon courage
http://sdz.tdct.org/sdz/les-sockets.html
Peut etre que ce liens pouura t'aider.
Si quelqu'un à le temps j'ai besoin d'aide sur ce topic pour du C client/serveur
https://forums.commentcamarche.net/forum/affich-34339818-definir-qui-est-le-serveur-qui-est-le-client
Peut etre que ce liens pouura t'aider.
Si quelqu'un à le temps j'ai besoin d'aide sur ce topic pour du C client/serveur
https://forums.commentcamarche.net/forum/affich-34339818-definir-qui-est-le-serveur-qui-est-le-client
En fait, on ne peut pas savoir quel est exactement le pb sans avoir le prototype de init_carte (et probablement le code de cette fonction pour comprendre l'origine de l'incompréhension de STamait par rapport à ce qu'il tente de faire) et les déclarations de buf, tab et per.
Comme l'erreur se plaint qu'on essaye d'affecter une valeur à quelque chose qui est un tableau, je soupçonne d'être un tableau et de renvoyer autre chose qu'un tableau (une fonction ne peut pas renvoyer un tableau en C, de toutes façons, au mieux un pointeur vers un espace mémoire, sur le premier élément).
Si tel est bien le pb, une façon de faire serait simplement de passer un pointeur vers le tableau à remplir en 3ème argument de , et remplir directement ce tableau passé en argument dans la fonction, qui pourra retourner (ou un code d'erreur si pour une raison ou l'autre la fonction échoue).
Pas de copies additionnelles à faire, à mon sens....
... mais là, on joue aux devinettes car STamait ne nous donne pas toutes les infos.
Dal