summaryrefslogtreecommitdiff
path: root/reference/C/FUNCTIONS/strtok.html
blob: 4d15b2f151922c545437c0da3f21adc1d60f595e (plain)
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
<title>strncpy function</title>

<head>
<script language="JavaScript">
</script>
</head>

<body bgcolor=#ffffcc>
<hr>
<center>
<h1>strtok function</h1>
</center>
<hr>
<p>
All the books that I have read, say that strtok will break a string 
into tokens. This is true, but a more obvious 
explanation is, that it will break a string into <b>words</b>.
<p>
<hr>
<pre>

Library:   string.h

Prototype: char * strtok(char *s, const char *delim);

Syntax:	   char string []="abc def ghi";
	   char * word;

	   word=strtok(string, " ");
	   word=strtok(NULL, " ");

</pre>

<b>strtok</b> requires a string and the word delimiters, for example:

<pre>

	   word = strtok(string, " ");
	                   A      A
	                   |      |
	                   |	  -------  Delimiters.
	                   |
	                   --------------  String to break up.

</pre>				
After the first call to strtok, word will point to <b>abc</b> on the second
call, word will point to <b>def</b>
<p>
<hr>
<h2>Notes:</h2>
<ul>
<li>strtok will alter the I/P string by placing 
<a href="../SYNTAX/null.html">NULLS</a> at the delimiter
positions. A good habit is to <a href="../FUNCTIONS/strcpy.html">copy</a> 
the string to a tempary string
and use the copy in the strtok call.
<p>
<li>More than one delimiter can be specified. So you could code:
<pre>

	word = strtok(string, " <a href="../FUNCTIONS/escape.html">\t</a>;:,");
	                         
</pre>
<li>You do not have to include \0 or <a href=../SYNTAX/null.html>NULL</a>
</ul>
<hr>
<h2>Examples:</h2>
<img src=../../GRAPHICS/computer.gif>
<a href="../EXAMPLES/strtok.c"> Example program.</a>
<hr>
<h2>See also:</h2>
<dt><a href="strcpy.html">strcpy</a> 
<dt><a href="strncpy.html">strncpy</a> 


<p>

<hr>
<p>
<center>
<table border=2 width="80%" bgcolor="ivory">
<tr align=center>
<td width="25%">
<a href="../cref.html">                  Top</a>
</td><td width="25%">
<a href="../master_index.html">          Master Index</a>
</td><td width="25%">
<a href="../SYNTAX/keywords.html">                 Keywords</a>
</td><td width="25%">
<a href="funcref.htm">      Functions</a>
</td>
</tr>
</table>
</center>
<p>
<hr>
<address>Martin Leslie 
</address><p>
</body>
</html>