Téléchargement
illégal
Posez votre question Signaler

[C] descripteur de socket sous Linux [Résolu]

callapa 11Messages postés 12 avril 2006Date d'inscription - Dernière réponse le 13 oct. 2007 à 22:05
Bonjour,

Je suis en train de développer un serveur sous Linux et je souhaiterais savoir comment passer à une fonction un descripteur de socket.

le descripteur de socket se définit de cette façon :

fd_set nom_du descripteur;

example d'utilisation :

FD_ZERO(&nom_du_descripteur);

Mon souhait serait donc de faire passer ce descripteur à une fonction par l'intermédiaire d'un pointeur je pense.

Merci de votre aide.
Lire la suite 

[C] descripteur de socket sous Linux »

8 réponses
Réponse
+0
moins plus
Salut.
Je voi vraiment pas où est le problème.
FD_ZERO(&nom_du_descripteur); doit fonctionner !
ou alors fd_set est déjà un pointeur, à ce moment, il suffit de faire
FD_ZERO(nom_du_descripteur); pour vérifier, il suffit de tester :)
Ajouter un commentaire
Réponse
+0
moins plus
Je me suis mal exprimé je pense.

Je veux créer une fonction dans laquel je souhaite passer en paramètre le descripteur de socket, est-ce possible ?
Si oui comment puis-je faire ?
Ajouter un commentaire
Réponse
+0
moins plus
oui c'est possible, tu peux passer ton descripteur de socket comme n'importe quelle autre variable.
Je ne sais pas si ça répond à ta question...
Je ne comprend vraiment pas ce qui t'embete.
Ajouter un commentaire
Réponse
+0
moins plus
Tu pourrais me montrer comment tu fais car je n'y arrive pas ;)
D'avance merci.
Ajouter un commentaire
Réponse
+0
moins plus
En fait, je n'ai jamais utiliser fd_set pour faire des socket.
Moi, j'utilise <socket.h> et j'ai des descripeur ayant comme type SOCKET et SOCKADDR. Mais je ne pense pas qu'il y ai un problème.
Il faudrai que tu m'en dise un peu plus sur ce que tu inclu, ton OS, etc...
mais je dirait:
int FD_ZERO(fd_set*);//mefie toi des non en maj qu'ils ne soient pas associer à des macro
int main(){
  fd_set*  descripteur;
//initialisation du descripteur
  FD_ZERO(descripteur);
  return 0;}
int FD_ZERO(fd_set x){
//traitement sur x
return 1;}
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour l'exemple, je vais tester tout ça :)
Ajouter un commentaire
Réponse
+0
moins plus
Super ça fonctionne ... et dire que je comprend rien au pointeur :(

Merci pour ton aide Char Snipeur
Ajouter un commentaire
Réponse
+0
moins plus
ja basst scho!
Ajouter un commentaire
Ce document intitulé « [C] descripteur de socket sous Linux » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?