Об игре
Новости
Войти
Регистрация
Рейтинг
Форум
3:30
890
 online
Требуется авторизация
Вы не авторизованы
   Форумы-->Форум для внеигровых тем-->
1|2|3

АвторТема для программистов
для KoNniK:
Из-за введения болонской системы обучения курс лекций и предметов сократился и перемешался, поэтому "написание клиента-сервера" получил раньше, чем узнал все про "сети"
В задании сказано "Створити сервер, що очікує підключення до інтернет сокета", а я без понятия чего и как, вот и ищу помощи всеми возможными способами))
Створити сервер, що очікує підключення до інтернет сокета
а по русски? йа как бы диалектов кроме русского и аглицкого не понимаю %)
честно прочитал что-то про то, что сервер очкует подключацца до интернет сокета %)
Создать сервер, который ожидает подключение к интернет сокету
это все задание? без конкретики? О_о
а вообще ожидание подключения по моему listen
А дельта уже не актуальна?
взято с педивикии, не проверял, голова трещит по швам после вчерашнего, глянь может поможет.
/* Код сервера на языке Си */

#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>

int main( void )
{
struct sockaddr_in stSockAddr;
int i32SocketFD = socket( PF_INET, SOCK_STREAM, IPPROTO_TCP );

if ( i32SocketFD == -1 )
{
perror( "ошибка при создании сокета" );
exit( EXIT_FAILURE );
}

memset( &stSockAddr, 0, sizeof( stSockAddr ) );

stSockAddr.sin_family = PF_INET;
stSockAddr.sin_port = htons( 1100 );
stSockAddr.sin_addr.s_addr = INADDR_ANY;

if (
bind(
i32SocketFD,
( const void* )&stSockAddr, /* зачем приведение типа? */
sizeof( stSockAddr )
) == -1
)
{
perror( "ошибка связывания" );

CloseSocketAndExitWithFailure:
close( i32SocketFD );
exit( EXIT_FAILURE );
}

if ( listen( i32SocketFD, 10 ) == -1 )
{
perror( "ошибка прослушивания" );
goto CloseSocketAndExitWithFailure;
}

for(;;)
{
int i32ConnectFD = accept( i32SocketFD, 0, 0 );

if ( i32ConnectFD < 0 )
{
perror( "ошибка принятия" );
close( i32ConnectFD ); /* нужно ли закрывать сокет после ошибки? */
goto CloseSocketAndExitWithFailure;
}

/* выполнение операций чтения и записи ... */

shutdown( i32ConnectFD, SHUT_RDWR );

close( i32ConnectFD );
}

return 0;
}
конкретика есть
Вот часть задания, оно разбито по пунктам
1. Создать сервер, который ожидает подключение к интернет сокету по адресу 0.0.0.0 на порту 8888 и принимает команды ls cd cat
2. Создать клиент, который будет подключатся к серверу(задается в командной строке) и получает команды с stdin и выдает результат на stdout
1|2|3
К списку тем
2007-2025, онлайн игры HeroesWM