Probleme avec les sockets en C
Fermé
g33kzone
Messages postés
40
Date d'inscription
samedi 26 janvier 2008
Statut
Membre
Dernière intervention
18 février 2009
-
18 févr. 2009 à 16:05
HackStyle Messages postés 30 Date d'inscription mercredi 1 avril 2009 Statut Membre Dernière intervention 12 avril 2009 - 6 avril 2009 à 07:00
HackStyle Messages postés 30 Date d'inscription mercredi 1 avril 2009 Statut Membre Dernière intervention 12 avril 2009 - 6 avril 2009 à 07:00
A voir également:
- Probleme avec les sockets en C
- Utilisation Sockets C# ✓ - Forum C#
- Socket , c et irc ✓ - Forum Programmation
- C / C++ Socket error sous Linux ✓ - Forum C++
- GetInputStream() avec socket java ✓ - Forum Java
- I7 socket 1156 compatible avec socket 1150? - Forum Carte-mère/mémoire
3 réponses
HackStyle
Messages postés
30
Date d'inscription
mercredi 1 avril 2009
Statut
Membre
Dernière intervention
12 avril 2009
9
5 avril 2009 à 17:03
5 avril 2009 à 17:03
Euh... Si tu connais bien tes leçons sur le C, tu devrais savoir que si une variable tableau n'est pas suivis des crochets pour spécifier l'élément voulu, cette variable donne l'adresse du premier élément (0).
Ces codes sont strictement égaux :
recv(s,&buf[0],sizeof(&buf[0]),0); // On donne l'adresse du premier élément
recv(s,buf,sizeof(buf),0); // Pareil
Ciao ;).
Ces codes sont strictement égaux :
recv(s,&buf[0],sizeof(&buf[0]),0); // On donne l'adresse du premier élément
recv(s,buf,sizeof(buf),0); // Pareil
Ciao ;).
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 816
5 avril 2009 à 19:46
5 avril 2009 à 19:46
Salut,
En fait en C, même si tu mets le tableau, le compilateur remplacera par l'adresse de celui-ci. Dis autrement, le passage de tableaux se fait par adresse et non par copie contrairement aux variables classiques.
Voilà pourquoi la fonction peut modifier le contenu de ton tableau ;-)).
En fait en C, même si tu mets le tableau, le compilateur remplacera par l'adresse de celui-ci. Dis autrement, le passage de tableaux se fait par adresse et non par copie contrairement aux variables classiques.
Voilà pourquoi la fonction peut modifier le contenu de ton tableau ;-)).
HackStyle
Messages postés
30
Date d'inscription
mercredi 1 avril 2009
Statut
Membre
Dernière intervention
12 avril 2009
9
6 avril 2009 à 07:00
6 avril 2009 à 07:00
Voila ce qui arrive quand on utilise les notions avancés sans de solides bases mdr...
Ah ouais fiddy c'est exact ! le boulet que je suis, j'ai carement zappé ça moi !
J'ai verifier et c'est exacte, je suis sur que je vien de découvrire la source de 20% de mes problémes lol.
Aller ciao ! Merci pour la petite leçon que je zappé toujours concernant les tabs.
@++
EDIT: Désolé g33kzone pour ces fausses infos
Ah ouais fiddy c'est exact ! le boulet que je suis, j'ai carement zappé ça moi !
J'ai verifier et c'est exacte, je suis sur que je vien de découvrire la source de 20% de mes problémes lol.
Aller ciao ! Merci pour la petite leçon que je zappé toujours concernant les tabs.
@++
EDIT: Désolé g33kzone pour ces fausses infos
5 avril 2009 à 19:42
savoir que si une variable tableau n'est pas suivis des crochets pour spécifier l'élément voulu, cette variable donne l'adresse du premier élément (0).
Non. Il ne faut pas confondre avec le pointeur. Pour t'en convaincre :
Si tu as un tableau char buf[250];
sizeof buf, ça te renvoie 250
sizeof &buf[0], ça te renverra 4 (sur machine 32 bits).
Donc tes codes ne sont pas égaux du tout ;-)).