GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
xt_read_line_malloc(3) FreeBSD Library Functions Manual xt_read_line_malloc(3)

#include <xtend/file.h>
-lxtend

int     xt_read_line_malloc(FILE *stream, char **buff, size_t *buff_size,
size_t *len)

stream:     FILE stream from which field is read
buff:       Character buffer into which field is copied
buff_size:  Size of the array passed to buff
len:        Pointer to a variable which will receive the field length

xt_read_line_malloc() reads a single line of text (up to the next newline or EOF) from stream, allocating and/or extending the provided buffer if needed.

The buff_size argument must be initilized to 0 if buff has not been previously allocated. This will cause an initial allocation to occur. If buff has been previously allocated, the buff_size must accurately reflect the allocated memory size. This will happen naturally when reusing buff in a loop, as shown in the example below.

Delimiter ending the read: either newline or EOF

FILE    *stream;
char    *buff;
size_t  buff_len, len;
// Reuse buff to minimize malloc() calls.  buff will be extended
// as needed when longer strings are read.  Initialize buff here
// rather than above for the most cohesive code.
buff_len = 0;
while ( ffile_read_line_malloc(stream, buff, &buff_len, &len) != EOF )
{
}

dsv_read_field_malloc(3), ffgetc(3)


Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.