Открыть главное меню

Socket write: различия между версиями

м (Пример: Красивости, красивости!)
Строка 18:Строка 18:
 
== Пример ==
 
== Пример ==
 
<pre>
 
<pre>
// сюда запомним адреса функций
+
// Сюда запомним адреса функций
 
socket_f* socket = NULL;
 
socket_f* socket = NULL;
 
socket_connect_f* socket_connect = NULL;
 
socket_connect_f* socket_connect = NULL;
Строка 27:Строка 27:
 
socket_delete_f* socket_delete = NULL;
 
socket_delete_f* socket_delete = NULL;
  
 +
HSOCK g_socket = HSOCK_INVALID;
  
HSOCK g_socket = HSOCK_INVALID;
+
// Объявляем переменные
//Объявляем переменные
+
char request[128];
    char       request[128];
+
char *data;
    char *data;
+
UINT32 wr;
    UINT32 wr;
+
INT32 len;
    INT32       len;
 
  
strcpy(request, "test");
+
strcpy(request, "test");
data = (char*)request; //В data - записываемые данные
+
data = (char*)request; // В data - записываемые данные
  
len = strlen(data); //Определяем размер данных
+
len = strlen(data); // Определяем размер данных
  
if ( g_socket != HSOCK_INVALID )  
+
if( g_socket != HSOCK_INVALID )  
 
{
 
{
//И пишем в цикле в сокет
+
// И пишем в цикле в сокет
while ( len > 0 ) {
+
while ( len > 0 )
wr = socket_write(g_socket, data, len);
+
{
len -= wr;
+
wr = socket_write(g_socket, data, len);
  }
+
len -= wr;
 +
}
 
}
 
}
 
</pre>
 
</pre>
 
[[Категория:Synsock_api]]
 
[[Категория:Synsock_api]]

Версия 18:42, 17 сентября 2009

UINT32 socket_write_f( HSOCK hsock, const void * buf, UINT32 size );

Описание

Функция записи в сокет.

Параметры

  1. HSOCK hsock
  2. const void * buf
    Буфер, который будет записан в сокет.
  3. UINT32 size
    Размер записываемых данных.

Пример

// Сюда запомним адреса функций
socket_f*	socket = NULL;
socket_connect_f*	socket_connect = NULL;
socket_write_f*	socket_write = NULL;
socket_read_f*	socket_read = NULL;
socket_bind_f*	socket_bind = NULL;
socket_close_f*	socket_close = NULL;
socket_delete_f*	socket_delete = NULL;
HSOCK	g_socket = HSOCK_INVALID;
// Объявляем переменные
char	request[128];
char	*data;
UINT32	wr;
INT32	len;
strcpy(request, "test");
data = (char*)request; // В data - записываемые данные
len = strlen(data);	// Определяем размер данных
if( g_socket != HSOCK_INVALID )
{	// И пишем в цикле в сокет	while ( len > 0 )	{	wr = socket_write(g_socket, data, len);	len -= wr;	}
}