Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
154
Добавлен:
01.04.2014
Размер:
1.26 Кб
Скачать

#include <iostream> // потоки ввода-вывода
#include <winsock2.h> // работа с сокетами

using namespace std;

void main()
{
	WORD wVersionRequested;
	WSADATA wsaData;
	SOCKET s;
	sockaddr_in addr;
	char b[200];
	int err;

	SetConsoleCP(1251); // локализация ввода
	SetConsoleOutputCP(1251); // локализация вывода

	wVersionRequested = MAKEWORD(2, 2); //  максимальный номер версии
	err = WSAStartup(wVersionRequested, &wsaData); // инициализация WinSock DLL
	if (err != 0) return; // если ошибка - завершение работы

	addr.sin_family = AF_INET; // тип адреса
	addr.sin_port = htons(1280); // номер порта
	addr.sin_addr.s_addr = inet_addr("127.0.0.1"); // IP-адрес сервера

	s = socket(AF_INET, SOCK_STREAM, 0); // создание сокета, протокол TCP
	connect(s, (sockaddr*) &addr, sizeof(addr)); // соединение с удалённым сокетом

	recv(s, b, sizeof(b), 0); // получение приветствия
	cout << b; b[0] = '\0';
	
	do // цикл приёма команд
	{
		cin.getline(b, sizeof(b), '\n'); // ввод команды пользователя
		send(s, b, sizeof(b), 0); // отправка команды на сервер
	}
	while (strcmp(b, "quit") != 0); // выход из цикла по команде quit

	closesocket(s); // закрытие сокета 
	WSACleanup(); // прекращение работы с WinSock DLL
}

Соседние файлы в папке lab8_client