1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>TRIO</title>
<link href="trio.css" rel="stylesheet" type="text/css">
</head>
<body>
<!-- Generated by Doxygen 1.2.12 -->
<center>
<a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> </center>
<hr><h1>Formatted Scanning Functions.</h1>Variations of formatted scanning functions.
<a href="#_details">More...</a><table border=0 cellpadding=0 cellspacing=0>
<tr><td colspan=2><br><h2>Functions</h2></td></tr>
<tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="group___scanf.html#a0">trio_scanf</a> (const char *format,...)</td></tr>
<tr><td> </td><td><font size=-1><em>Scan characters from standard input stream.</em> <a href="#a0">More...</a><em></em></font><br><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Variations of formatted scanning functions.
<p>
<b>SYNOPSIS</b>
<p>
<div class="fragment"><pre>
cc ... -ltrio -lm
#include <trio.h>
</pre></div>
<p>
<b>DESCRIPTION</b>
<p>
This documentation is incomplete. The documentation of the scanf family in [C99] and [UNIX98] also applies to the trio counterparts.
<p>
<b>SCANNING</b>
<p>
The scanning is controlled by the format string. The format string can contain normal text and conversion indicators. The normal text can be any character except the nil character (\000) and the percent character (\045 = '%'). Conversion indicators consists of an indication character (%), followed by zero or more conversion modifiers, and exactly one conversion specifier.
<p>
<b>Modifiers</b>
<p>
<em>Positional</em> ( <code>9$</code> ) [UNIX98]
<p>
See <a class="el" href="group___printf.html#a0">trio_printf</a>.
<p>
<b>Specifiers</b>
<p>
<em>Percent</em> ( <code>%</code> )
<p>
<em>Character</em> ( <code>c</code> )
<p>
<em>Decimal</em> ( <code>d</code> )
<p>
<em>Floating-point</em> ( <code>a</code>, <code>A</code>, <code>e</code>, <code>E</code>, <code>f</code>, <code>F</code>, <code>g</code>, <code>G</code> )
<p>
<em>Integer</em> ( <code>i</code> )
<p>
<em>Count</em> ( <code>n</code> )
<p>
<em>Octal</em> ( <code>o</code> )
<p>
<em>Pointer</em> ( <code>p</code> )
<p>
<em>String</em> ( <code>s</code> )
<p>
<em>Unsigned</em> ( <code>u</code> )
<p>
<em>Hex</em> ( <code>x</code>, <code>X</code> )
<p>
<em>Scanlist</em> ( <code>[]</code> )
<p>
Scanlist Exclusion (<code>^</code> )
<p>
Scanlist Range ( <code>-</code> ) [TRIO]
<p>
<ul>
<li> Only increasing ranges, i.e. <code>[a-b]</code>, but not <code>[b-a]</code>. <li> Transitive ranges, ie. <code>[a-b-c]</code> equals <code>[a-c]</code>. <li> Trailing minus, ie. <code>[a-]</code> is interpreted as an <code>a</code> and a <code>-</code>. <li> Duplicates are ignored.</ul>
Scanlist Equivalence Class Expression ( <code>[</code>= =<code>]</code> ) [TRIO]
<p>
Locale dependent (LC_COLLATE). Only one expression can appear inside the delimiters. <ul>
<li> <code>[=a=]</code> All letters in the same equivalence class as the letter <code>a</code>. <div class="fragment"><pre>
trio_scanf("%[[=a=]b]\n", buffer);
trio_scanf("%[[=a=][=b=]]\n", buffer);
</pre></div></ul>
Scanlist Character Class Expression ( <code>[</code>: :<code>])</code> [TRIO] Locale dependent (LC_CTYPE). Only one expression can appear inside the delimiters. <ul>
<li> <code>[:alnum:]</code> Same as <code>[:alpha:]</code> and <code>[:digit:]</code> <li> <code>[:alpha:]</code> Same as <code>[:lower:]</code> and <code>[:upper:]</code> <li> <code>[:cntrl:]</code> Control characters <li> <code>[:digit:]</code> Decimal digits <li> <code>[:graph:]</code> Printable characters except space <li> <code>[:lower:]</code> Lower case alphabetic letters <li> <code>[:print:]</code> Printable characters <li> <code>[:punct:]</code> Punctuation <li> <code>[:space:]</code> Whitespace characters <li> <code>[:upper:]</code> Upper case alphabetic letters <li> <code>[:xdigit:]</code> Hexadecimal digits <div class="fragment"><pre>
trio_scanf("%[[:alnum:]]\n", buffer);
trio_scanf("%[[:alpha:][:digit:]]\n", buffer);
</pre></div></ul>
<b>RETURN</b> <b>VALUES</b>
<p>
<b>SEE</b> <b>ALSO</b>
<p>
<a class="el" href="group___printf.html#a0">trio_printf</a> <hr><h2>Function Documentation</h2>
<a name="a0" doxytag="trio.c::trio_scanf"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"> int trio_scanf </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">const char * </td>
<td class="mdname" nowrap> <em>format</em>, </td>
</tr>
<tr>
<td></td>
<td></td>
<td class="md" nowrap>... </td>
<td class="mdname" nowrap> </td>
</tr>
<tr>
<td></td>
<td class="md">) </td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Scan characters from standard input stream.
<p>
<dl compact><dt><b>
Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>format</em> </td><td>
Formatting string. </td></tr>
<tr><td valign=top><em>...</em> </td><td>
Arguments. </td></tr>
</table>
</dl><dl compact><dt><b>
Returns: </b><dd>
Number of scanned characters. </dl> </td>
</tr>
</table>
<HR>
<center class="copyright">Copyright (C) 2001 Bjørn Reese and Daniel Stenberg.</center>
</body>
</html>
|