Probleme compilation code

miki -  
 miki -
Bonjour,a tous je me suis lancer dans l'aprentisage des socket j'ai trouver un super cours sur le site du zero la ou j'ai appris les base en c bref j'ai compiler un code socket client mais dev c++ refuse et m'indique une erreur:
main.c In function `int main()':
73 main.c invalid conversion from `unsigned int*' to `int*'
73 main.c initializing argument 3 of `SOCKET accept(SOCKET, sockaddr*, int*)
Makefile.win [Build Error] [main.o] Error 1
voici le code source si quelqun pouvait me dire ou et l'erreur ça serai super cool merci a vous ps je suis sou windows

#if defined (WIN32)
#include <winsock2.h>
#elif defined (linux)
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#define INVALID_SOCKET -1
#define SOCKET_ERROR -1
#define closesocket(s) close(s)
typedef int SOCKET;
typedef struct sockaddr_in SOCKADDR_IN;
typedef struct sockaddr SOCKADDR;
#endif

#include <stdio.h>
#include <stdlib.h>
#define PORT 23

int main(void)
{
#if defined (WIN32)
WSADATA WSAData;
int erreur = WSAStartup(MAKEWORD(2,0), &WSAData);
#else
int erreur = 0;
#endif

/* Socket et contexte d'adressage du serveur */
SOCKADDR_IN sin;
SOCKET sock;
unsigned int recsize = (unsigned int) sizeof sin;

/* Socket et contexte d'adressage du client */
SOCKADDR_IN csin;
SOCKET csock;
unsigned int crecsize = (unsigned int) sizeof csin;

int sock_err;

if(!erreur)
{
/* Création d'une socket */
sock = socket(AF_INET, SOCK_STREAM, 0);

/* Si la socket est valide */
if(sock != INVALID_SOCKET)
{
printf("La socket %d est maintenant ouverte en mode TCP/IP\n", sock);

/* Configuration */
sin.sin_addr.s_addr = htonl(INADDR_ANY); /* Adresse IP automatique */
sin.sin_family = AF_INET; /* Protocole familial (IP) */
sin.sin_port = htons(PORT); /* Listage du port */
sock_err = bind(sock, (SOCKADDR *) &sin, recsize);

/* Si la socket fonctionne */
if(sock_err != SOCKET_ERROR)
{
/* Démarrage du listage (mode server) */
sock_err = listen(sock, 5);
printf("Listage du port %d...\n", PORT);

/* Si la socket fonctionne */
if(sock_err != SOCKET_ERROR)
{
/* Attente pendant laquelle le client se connecte */
printf("Patientez pendant que le client se connecte sur le port %d...\n", PORT);
csock = accept(sock, (SOCKADDR *) &csin, &crecsize);
printf("Un client se connecte avec la socket %d de %s:%d\n", csock, inet_ntoa(csin.sin_addr), htons(csin.sin_port));
}
else
perror("listen");
}
else
perror("bind");

/* Fermeture de la socket client et de la socket serveur */
printf("Fermeture de la socket client\n");
closesocket(csock);
printf("Fermeture de la socket serveur\n");
closesocket(sock);
printf("Fermeture du serveur terminée\n");
}
else
perror("socket");

#if defined (WIN32)
WSACleanup();
#endif
}

return EXIT_SUCCESS;
}
A voir également:

2 réponses

kerozene Messages postés 31 Statut Membre
 
Tiens, vas sur ce site ils pouront t'aider normalement et ton code sera plus lisible via la fonction code: https://openclassrooms.com/fr/
0
miki
 
merci mais c'est justement la que j'ai recuperer le code vous pensez qu'il m'aideront mieux ?
0