Agilent Technologies N5183A MXG User Manual

Page 124

Advertising
background image

114

Agilent N518xA, E8663B, E44x8C, and E82x7D Signal Generators Programming Guide

Programming Examples
LAN Programming Interface Examples

/**************************************************************************

* recv_line(): similar to fgets(), but uses recv()

**************************************************************************/

char * recv_line(SOCKET sock, char * result, int maxLength)

{

#ifdef WINSOCK

int cur_length = 0;

int count;

char * ptr = result;

int err = 1;

while (cur_length < maxLength) {

/* Get a byte into ptr */

count = recv(sock, ptr, 1, 0);

/* If no chars to read, stop. */

if (count < 1) {

break;

}

cur_length += count;

/* If we hit a newline, stop. */

if (*ptr == '\n') {

ptr++;

err = 0;

break;

}

ptr++;

}

*ptr = '\0';

if (err) {

return NULL;

} else {

return result;

}

#else

/***********************************************************************

Advertising
This manual is related to the following products: