Commit | Line | Data |
---|---|---|
5b62e993 MW |
1 | .TH getln2 3 |
2 | .SH NAME | |
3 | getln2 \- read one line of data | |
4 | .SH SYNTAX | |
5 | .B #include <getln.h> | |
6 | ||
7 | int \fBgetln2\fP(&\fIss\fR,&\fIsa\fR,&\fIcont\fR,&\fIclen\fR,\fIsep\fR); | |
8 | ||
9 | substdio \fIss\fR; | |
10 | .br | |
11 | stralloc \fIsa\fR; | |
12 | .br | |
13 | char *\fIcont\fR; | |
14 | .br | |
15 | unsigned int \fIclen\fR; | |
16 | .br | |
17 | int \fIsep\fR; | |
18 | .SH DESCRIPTION | |
19 | .B getln2 | |
20 | reads a line of characters, terminated by a | |
21 | .I sep | |
22 | character, | |
23 | from | |
24 | .IR ss . | |
25 | ||
26 | The line is returned in two pieces. | |
27 | The first piece is stored in | |
28 | .IR sa . | |
29 | The second piece is | |
30 | .IR cont , | |
31 | a pointer to | |
32 | .I clen | |
33 | characters inside the | |
34 | .I ss | |
35 | buffer. | |
36 | The second piece must be copied somewhere else | |
37 | before | |
38 | .I ss | |
39 | is used again. | |
40 | ||
41 | If | |
42 | .B getln2 | |
43 | sees end-of-input before it sees | |
44 | .IR sep , | |
45 | it sets | |
46 | .I clen | |
47 | to 0 and does not set | |
48 | .IR cont . | |
49 | It puts the partial line into | |
50 | .IR sa . | |
51 | ||
52 | .B getln2 | |
53 | normally returns 0. | |
54 | If it runs out of memory, | |
55 | or encounters an error from | |
56 | .IR ss , | |
57 | it returns -1, | |
58 | setting | |
59 | .B errno | |
60 | appropriately. | |
61 | .SH "SEE ALSO" | |
62 | stralloc(3), | |
63 | substdio(3), | |
64 | getln(3) |