1、服务器端
通信模型:初始化winsock -> 创建socket -> 绑定(bind) -> 监听(listen) -> 接收(accept)
/**
* main.c
* socket server
* @date : 2011/11/27
* @author : MJN
*/
#include <stdio.h>
#include <winsock2.h>
#pragma comment(lib, "ws2_32")
int main() {
int iResult;
WORD wVersionRequested;
WSADATA wsaData;
SOCKET listenSocket;
SOCKET acceptSocket;
struct sockaddr_in service;
/* Use the MAKEWORD(lowbyte, highbyte) macro declared in Windef.h */
wVersionRequested = MAKEWORD(2, 2);
/* Initializing Winsock */
iResult = WSAStartup(wVersionRequested, &wsaData);
if (iResult != 0) {
printf("WSAStartup failed with error: %d\n", iResult);
return -1;
} else {
printf("WSAStartup succeeded!\n");
}
if (wsaData.wVersion != wVersionRequested) {
printf("the socket version loaded is: %d.%d, but i