Indication Programme C

Fermé
baka600 Messages postés 6 Date d'inscription lundi 7 février 2011 Statut Membre Dernière intervention 8 février 2011 - Modifié par baka600 le 8/02/2011 à 19:53
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 - 9 févr. 2011 à 09:02
Bonjour,

Je suis sur un exercice concernant les client/serveur TCP sous Unix et j'ai cela sous les yeux :

http://img833.imageshack.us/img833/6322/22222q.png

J'ai par la suite plusieurs questions mais ce n'est pas le soucis, je souhaiterai juste avoir quelques indications pour comprendre ce script C car je suis totalement perdu

Merci par avance


A voir également:

1 réponse

baka600 Messages postés 6 Date d'inscription lundi 7 février 2011 Statut Membre Dernière intervention 8 février 2011
8 févr. 2011 à 21:24
Voila sur ce que je m'avance, dans le doute

Dans un 1er temps, le socket est déclaré
Il convertit l'adresse ip, le protocole et le port en format "réseau" et se connecte au serveur de socket
(je ne comprends pas le vérification du "if" à la fin du int main)

Dans le void

Lit le fichier et envoie les données au serveur de socket et vérifie que les données sont bien envoyes sinon un message d'erreur

Qu'en pensez-vous ?

Merci
0
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 54
9 févr. 2011 à 09:02
Bonjour, le if à la fin du main :
if(strcmp(argv[2],"stdin")!=0) fp=fopen(argv[2],"r"); else fp=stdin;
strcmp compare deux chaines de caractères et si les deux sont identiques il renvoie 0. Là il compare l'argument 2 <source> à la chaine "stdin" donc si <source> n'est pas "stdin" alors on ouvre le fichier avec pour nom l'argument 2 <source> en lecture.
Avec le else (si argv[2]=="stdin") le fichier fp devient stdin.
0