begin process at 2012 05 29 18:24:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Linux

 > 

Réseau & Internet

 > 

Pb Fin de transmission recv


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb Fin de transmission recv

samedi 21 juillet 2007 à 06:47:45 | Pb Fin de transmission recv

makmibad

Voila, il y a quelque chose que je ne comprends pas :
La fonction recv devient bloquante ds certain cas et pas d'autres ; je m'explique :

Si j'envoie ca :
    char instruc[TAILLE_INSTRUC];
    fgets (instruc, TAILLE_INSTRUC, stdin);   instruc[strlen(instruc)-1] = '\0';
    sendPacket(instruc,sizeof(instruc));

(TAILLE_INSTRUC=256)

La commande récupérée est bien celle que j'ai saisie au clavier,

par contre je mets ca :

    char* instruction = (char*) malloc (256);
    strcpy(instruction,"/quit");
    instruction[255] = '\0';
    cli1->sendInstruction(instruction,256);
Et bien là, recv fait une lecture et se bloque après ! (recv dans un while)

Je pense que je ne formate pas bien ma variable instruction contrairement à fgets !
Je ne pense pas que la suite du code soit important sauf si quelqu'un le souhaite.

Merci d'avance !
samedi 21 juillet 2007 à 12:08:17 | Re : Pb Fin de transmission recv

juju12

As-tu essayé, dans le code défaillant, de mettre le 0 de fin de chaîne juste après l'instruction, et de n'envoyer que la taille de l'instruction ? Parce que là il peut y avoir n'importe quoi dans la chaîne totale genre "/quit@@@@iytfitfugv..." Faudrait voir la boucle de recv, mais si tu testes si c'est égal à "/quit" pour quitter c'est normal que ça plante.

samedi 21 juillet 2007 à 13:19:19 | Re : Pb Fin de transmission recv

makmibad

Merci pour ta réponse, en fait j'en ai eu marre de ne pas comprendre ; dans ma boucle while (recv ....) j'ai mi un booléen, si je détecte qu'il y a un '\0' c'est que c'est le dernier paquet de la réception, je sors et je continue mon processus !

Donc plus de problème, c'est pas très beau mais ca me suffit pour mon utilisation, merci en tout cas !


Cette discussion est classée dans : taille, char, instruction, recv, instruc


Répondre à ce message

Sujets en rapport avec ce message

Taille de ma structure [ par crocejf2000 ] Salut a tous, J'ai un tres gros probleme qui me bloque toute mon avancé dans mon prog : j'ai une structure : typedef struct{ unsigned short Locate; ch recv() et du brol [ par epoc ] hum... encore moi!g un petit prob avec la fonction recv() ou send(), je c pas trop.dans mon client j'ai ça :char *buffer = new char[1024];buffer="NEW Taille d'une structure en mémoire [ par PeteTheBull ] Bonjour J'ai un petit problème en c++ (sous VC++6). Je défini une structure du style : typedef struct     {         __int64 B;       &nbsp question d'allocation probleme char char* Question simple [ par youpiyoyo ] voici mon probleme://///////////////////////////////////////////////////int rec = recv(ns,buffer,64*sizeof(char),0); buffer[rec] = '\0' ; //cout pb d'allocation memoire pour des tableaux char [ par kollibar ] bonjour, j ai un pb sur le code suivant(imprime le handle et le nom de toutes les fenetres active a l'écran) au niveau des variables char * titre et c lecture fichier [c++ builder] [ par SaXo360 ] Bonjour, je lis dans un fichier des noms séparé par ce caractèere ';' et je devrait afficher ces noms dans mon combobox mais cane veut pas pourtant je probléme soket avec la fonction recv [ par chrno84 ] Bonjour, je pense avoir un probléme avec ma fonction recv, en effet elle me retourne la valeur -1, mon send fonctionne bien (retourne une valeur >0) j Tableau de structures [ par RoulianRoss ] Bonjour,j'ai une structure définie comme ceci:typedef struct{    char    cIntitule[TAILLE_INTITULE];         // Intitulé de la voie    char    cUnite[ Addition sur pointeurs [ par CCJ ] Bonjour.Je cherche actuellement a determiner la taille d'un tableau. J'ai donc ecrit le petit bout de code suivant :template long SizeofArray(T * dat Malloc et mémoire affectée [ par Chop_chop ] Bonjour,J'ai un petit soucis quant à l'allocation de mémoire pour un char* avec l'utilisation de malloc.Voici mon code (bien allégé) :[CODE] char *fic


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales