The strtok function is used to find the next token in a string. The token is specified by a list of possible delimiters. The following example reads a line of text from a file and determines a word using the delimiters, space, tab, and new line

Files Recovery Software
Home Contact Details Customer Support Download Demo Products  

 
 

The strtok Function

The strtok function is used to find the next token in a string. The token is specified by a list of possible delimiters.

The following example reads a line of text from a file and determines a word using the delimiters, space, tab, and new line. Each word is then displayed on a separate line:

#include <stdio.h>
#include <string.h>

int main()
{
FILE *in;
char line[80];
char *delimiters = " \t\n";
char *token;

if ((in = fopen("C:\\text.txt", "r")) == NULL)
{
puts("Unable to open the input file");
return 0;
}

/* Read each line one at a time */
while(!feof(in))
{
/* Get one line */
fgets(line, 80, in);

if (!feof(in))
{
/* Break the line up into words */
token = strtok(line, delimiters);

while (token != NULL)
{
puts(token);
/* Get the next word */
token = strtok(NULL, delimiters);
}
}
}
fclose(in);
return 0;
}

It above program, in = fopen("C:\\text.txt", "r"), opens and existing file C:\\text.txt. If the does not exist in the specified path or for any reason, the file could not be opened, an error message is displayed on screen.

Consider the following example, which uses some of these functions:

#include <stdio.h>
#include <string.h>

void main()
{
char line[100], *sub_text;

/* initialize string */
strcpy(line,"hello, I am a string;");

printf("Line: %s\n", line);

/* add to end of string */
strcat(line," what are you?");

printf("Line: %s\n", line);


/* find length of string */
/* strlen brings back */
/* length as type size_t */

printf("Length of line: %d\n", (int)strlen(line));

/* find occurence of substrings */
if ( (sub_text = strchr ( line, 'W' ) )!= NULL )

printf("String starting with \"W\" ->%s\n",
sub_text);

if ( ( sub_text = strchr ( line, 'w' ) )!= NULL )

printf("String starting with \"w\" ->%s\n",
sub_text);

if ( ( sub_text = strchr ( sub_text, 'u' ) )!= NULL )
printf("String starting with \"w\" ->%s\n",
sub_text);

}

The output of the program will be displayed as follows:

Line: hello, I am a string;
Line: hello, I am a string; what are you?
Length of line: 35
String starting with "w" ->what are you?
String starting with "w" ->u?


Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20

 
 

page 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37

 
 

page 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54

 
 

page 55 | 56 | 57 | 58 | 59 | 60

Next page
 
 
Data Recovery Book
 
Chapter 1 An Overview of Data Recovery
Chapter 2 Introduction of Hard Disks
Chapter 3 Logical Approach to Disks and OS
Chapter 4 Number Systems
Chapter 5 Introduction of C Programming
Chapter 6 Introduction to Computer Basics
Chapter 7 Necessary DOS Commands
Chapter 8 Disk-BIOS Functions and Interrupts Handling With C
Chapter 9 Handling Large Hard Disks
Chapter 10 Data Recovery From Corrupted Floppy
Chapter 11 Making Backups
Chapter 12 Reading and Modifying MBR with Programming
Chapter 13 Reading and Modifying DBR with Programming
Chapter 14 Programming for “Raw File” Recovery
Chapter 15 Programming for Data Wipers
Chapter 16 Developing more Utilities for Disks
Appendix Glossary of Data Recovery Terms
 
 
Pro Data Doctor

Home

Products

Contact Details

Customer Support

Download Demo

Terms and Conditions

 
Pro Data Doctor