[Winsock] Création de Socket, fonction accept
Bonjour,
j'ai besoin de créer un socket, je pensais avoir fait tout bien comme il faut mais je suis face à une erreur :) :
Impossible de convertir le paramètre 3 de 'unsigned int' en 'in *'
Je ne comprend pas... Voici l'aide que j'ai utilisé http://c.developpez.com/WalrusSock/. Là où se situe mon erreur je n'ai rien trouvé de différent ailleurs.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| #include "stdafx.h"
#include <winsock2.h>
#pragma comment(lib, "ws2_32.lib")
int _tmain(int argc, _TCHAR* argv[])
{
WSADATA WSAData;
WSAStartup(MAKEWORD(2,0), &WSAData);
SOCKET sock;
struct sockaddr_in sin;
sin.sin_addr.s_addr = inet_addr("127.0.0.1");
sin.sin_family = AF_INET;
sin.sin_port = htons(4148);
sock = socket(AF_INET,SOCK_STREAM,0);
bind(sock, (struct sockaddr *)&sin, sizeof(sin));
listen(sock, 0);
int val = 0;
while(1)
{
val = accept(sock, (SOCKADDR *)&sin, sizeof(sin));
if(val != INVALID_SOCKET)
{
printf("INVALID SOCKET");
}
}
return 0;
} |