erdax | Bonjour!
J'aimerais créer un serveur et client pour apprendre un peu l'utilisation des sockets. J'ai écris un bout de code mais lorsque je compile je n'ai ni "listen" ni "bind" qui s'affiche.
Pourriez vous m'aider?
Merci!
Code serveur:
Code :
- #include<unistd.h>
- #include <winsock2.h>
- #include <ws2tcpip.h>
- #include<stdio.h>
- #include<stdlib.h>
- #include<string.h>
- typedef struct User
- {
- char nom[30];
- int age;
- }User;
- int main(void)
- {
- WSADATA WSAData;
- if(WSAStartup(MAKEWORD(1, 1), &WSAData))
- {
- printf("WSA n'a pas pu être initialisé.\n" );
- }
- int socketServer = socket(AF_INET, SOCK_STREAM, 0);
- struct sockaddr_in addrServer;
- addrServer.sin_addr.s_addr = inet_addr("127.0.0.1" );
- addrServer.sin_family = AF_INET;
- addrServer.sin_port = htons(30000);
- bind(socketServer, (const struct sockaddr *)&addrServer, sizeof(addrServer));
- printf("bind: %s\n",socketServer);
- listen(socketServer,5);
- printf("listen\n" );
- struct sockaddr_in addrClient;
- socklen_t csize = sizeof(addrClient);
- int socketClient = accept(socketServer, (struct sockaddr *)&addrClient, &csize);
- printf("accept\n" );
- printf("client: %d\n", socketClient);
- User user = {
- .nom = "Arthur",
- .age = 19
- };
- close(socketClient);
- close(socketServer);
- printf("Close\n" );
- WSACleanup();
- return 0;
- }
|
|