begin process at 2012 05 29 16:26:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

prb a la compilation vous vc++


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

prb a la compilation vous vc++

dimanche 30 octobre 2005 à 10:30:22 | prb a la compilation vous vc++

shadow1779

Membre Club
Bonjour,

j'ai tenté de faire un programme en C utilisant les sockets, la personne qui lance son programme choisi elle meme l'ip et le port a se connecter, déclarées de la facon suivante

char ip[15];
int port;

et ensuite pour que l'utilisateur les remplissent:

gets(ip);
scanf("%d",port);

visual c++ (je tourne sous vc2003) me le compile bien mais me met quand meme un message: "c:\documents and settings\shadow\mes documents\prog c\prog\main.cpp(15) : warning C4700: local variable 'port' used without having been initialized"

mais si je lance le programme il me lance le debug et me dis qu'il y a un probleme a la ligne scanf("%d",port);

voici l'intégralité du prog au cas ou:

#include <stdio.h>

#include <stdlib.h>

#include <winsock2.h>

#pragma comment(lib, "ws2_32.lib")

int main(int argc, char *argv[])

{

char ip[15];

int port;

printf("quel est l'ip: ");

gets(ip);

printf("quel est le port: ");

scanf("%d",port);

WSADATA WSAData;

WSAStartup(MAKEWORD(2,0), &WSAData);

SOCKET sock;

SOCKADDR_IN sin;

char *buffer = new char[255];

sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);

sin.sin_addr.s_addr = inet_addr("62.250.14.6");

sin.sin_family = AF_INET;

sin.sin_port = htons(6667);

if(connect(sock, (SOCKADDR *)&sin, sizeof(sin)))

{

printf("la connection a echouee");

exit(0);

}

else

{

printf("socket connected!");

}

closesocket(sock);

WSACleanup();

printf("\n\n");

system("pause");

return 0;

}


.
dimanche 30 octobre 2005 à 11:27:34 | Re : prb a la compilation vous vc++

Tidam

Oula c'est archi pas securisé ton truc xD
enfin bref pour ton probleme deja tu pourrais commencer par les utiliser tes variables, car tu ouvres une chaussette (socket) toujours sur la meme ip et le meme port :

sin.sin_addr.s_addr = inet_addr("62.250.14.6");

sin.sin_family = AF_INET;

sin.sin_port = htons(6667);

ce qui est de l'erreur, a ta place je passerai par un char, suivit de 'port = atoi(temp);'
dimanche 30 octobre 2005 à 11:30:47 | Re : prb a la compilation vous vc++

Tidam

oups la police a merdé :p
dimanche 30 octobre 2005 à 11:37:23 | Re : prb a la compilation vous vc++

shadow1779

Membre Club

ouai en plus me suis trompé a un moment g fé un essai normalement c'est

sin.sin_addr.s_addr = inet_addr(ip);

sin.sin_family = AF_INET;

sin.sin_port = htons(port);

dimanche 30 octobre 2005 à 11:39:32 | Re : prb a la compilation vous vc++

shadow1779

Membre Club

on peu pas car siin.sin_port = htons(port); c'est impossible que ca soit une chaine de caractere il me dis...

dimanche 30 octobre 2005 à 12:34:49 | Re : prb a la compilation vous vc++

Tidam

Réponse acceptée !
nan t'as pas compris ...
un exemple :
<--
char buff[42];
char ip[16];
int port;

printf("Entrez l'ip : ");
gets(buff);
strlcpy(ip, buff, strlen(ip));
printf("Entrez le port : ");
gets(buff);
port = atoi(buff);
-->
avec ca tu as bien ton ip et ton port
ip est bien une chaine de caractere
et port un int.
dimanche 30 octobre 2005 à 12:48:12 | Re : prb a la compilation vous vc++

shadow1779

Membre Club
merci mais tu peu m'expliquer ce qu'est la fonction atoi(); ? :s

.
dimanche 30 octobre 2005 à 13:12:21 | Re : prb a la compilation vous vc++

Tidam

Réponse acceptée !
int atoi(char buff);

elle converti en int une chaine de character
ex:
 int nb;
 char buff[5] = "1024";
 nb = atoi(buff);
 printf("nb: %d", nb);
cela va retourner:
 nb: 1024
dimanche 30 octobre 2005 à 13:49:11 | Re : prb a la compilation vous vc++

shadow1779

Membre Club

ah ok merci :)


Cette discussion est classée dans : port, printf, ip, sin, sock


Répondre à ce message

Sujets en rapport avec ce message

Connexion serveur client réseau [ par matad0r ] Bonjour ! Ceci est mon premier post ! Voilà mon problème : j'ai créer deux applications, une cliente et une serveur. Mais le problème est que elle ne serveur / client [ par the68 ] Bonjour à tous, Voilà je débute dans la programmation en C; j'ai suivis attentivement un tutoriel sur le C pour avoir les bases, et là je me lance d probleme de send en C avec socket [ par thorn74 ] bonjour je suis actuellement en IUT info et G un  projet a faire mais je bloque je doit fair eun petit programme ou lorsqu'un ordinateur se connecte a erreur completement inexplicable ! [ par anonyme_man_in_this_world ] salut  ! lorsque j' execute les deux programmes sur mon pc, tout marche bien ,meme si je valide l'ip internet . Mais lorsque je les ai testé avec mes transfert de fichiers [ par anonyme_man_in_this_world ] salut  !recemment ,j'ai testé le programme que j'ai deposé sur le site avec deux de mes amis et ça n'a pas l'air de fonctionner ,pourtant lorsque je t client serveur echange de donne [ par bapdur ] voici la version dun client et dun serveur que je fais pour un jeu mais les donnes son envoyer en continu jaimerais aire en sorte que si je tape un ca socket tcp [ par sendouda ] salut tout le monde;j'essaie d'envoyer des paquets TCP avec sock raw il n' ya pas d'erreurs mais je ne les capte pas avec le sniffer Ethereal.Ce même Erreur compilation, Requette pour Connaitre le premier port ouvert..... [ par wizard512 ] Bonsoir,Je souhaiterais avoir un peu d'aide si possible,pour finir de réalisé un petit programme en c,Car j'ai rencontré des problè Problème d'IP Client avec les winsock [ par Cphil51 ] Boujour a tous.Je m'interesse en ce moment aux socket sous windows et j'ai un petit probleme actuellement. J'aimerais savoir comment récupérer l'IP d' pb socket [ par surfeurnet ] voici mon programme qui a pour l'instant pour unique but de se connecter à un serveur :# include # include # pragma comment (lib,"w32_32.lib")char ip,


Nos sponsors


Sondage...

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,546 sec (3)

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