Η λειτουργία strtok χρησιμοποιείται για να βρεί το επόμενο σημείο σε μια σειρά. Το σημείο διευκρινίζεται από έναν κατάλογο πιθανών οριοθετών. Το ακόλουθο παράδειγμα διαβάζει μια γραμμή κειμένου από ένα αρχείο και καθορίζει μια λέξη χρησιμοποιώντας τους οριοθέτες, το διάστημα, την ετικέττα, και τη νέα γραμμή.

Data Recovery PRO DATA DOCTOR

Home | Order Online | Downloads | Contact Us | Software Knowledgebase

it | es | pt | fr | de | jp | kr | cn | ru | nl | gr


Η λειτουργία strtok

Η λειτουργία strtok χρησιμοποιείται για να βρεί το επόμενο σημείο σε μια σειρά. Το σημείο διευκρινίζεται από έναν κατάλογο πιθανών οριοθετών.

Το ακόλουθο παράδειγμα διαβάζει μια γραμμή κειμένου από ένα αρχείο και καθορίζει μια λέξη χρησιμοποιώντας τους οριοθέτες, το διάστημα, την ετικέττα, και τη νέα γραμμή. Κάθε λέξη επιδεικνύεται έπειτα σε μια χωριστή γραμμή:

#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;
}

/* Διαβάστε σε κάθε γραμμή μιας σε έναν χρόνο */
while(!feof(in))
{
/* Πάρτε μια γραμμή */
fgets(line, 80, in);

if (!feof(in))
{
/* Σπάστε τη διάταξη στις λέξεις */
token = strtok(line, delimiters);

while (token != NULL)
{
puts(token);
/* Πάρτε την επόμενη λέξη */
token = strtok(NULL, delimiters);
}
}
}
fclose(in);
return 0;
}

Επάνω από το πρόγραμμα, = fopen("C:\\text.txt", "ρ"), ανοίγει και υπάρχον αρχείο C:\\text.txt. Εάν δεν υπάρχει στη διευκρινισμένη πορεία ή για οποιοδήποτε λόγο, το αρχείο δεν θα μπορούσε να ανοίξουν, ένα μήνυμα λάθους επιδεικνύεται στην οθόνη.

Εξετάστε το ακόλουθο παράδειγμα, το οποίο χρησιμοποιεί μερικών από αυτές τις λειτουργίες:

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

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

/* μονογράψτε τη σειρά */
strcpy(line,"hello, I am a string;");

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

/* προσθέστε στο τέλος της σειράς */
strcat(line," what are you?");

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


/* βρείτε το μήκος της σειράς */
/* strlen brings back */
/* length as type size_t */

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

/* βρείτε την εμφάνιση των 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);

}

Η παραγωγή του προγράμματος θα επιδειχθεί ως εξής:

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?

 

Sample Chapters from book DATA RECOVERY WITH AND WITHOUT PROGRAMMING by Author Tarun Tyagi
Data Recovery with & without Programming


Publishers of the Book
Number of Pages
ISBN
Price of the Book


BPB Publications, New Delhi, India
540
81-7656-922-4
$69.00 (Including Shipping Charges, Cost of Book and Other expenses, Free Source Code CD included with the Book)





Buy Data recovery Book

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

© Copyright 2002-2005 DataDoctor.Biz

Home | Contact us | Downloads | Services | Resources | Terms and conditions | Site map

Website Data Recovery | recuperación de Datos | Récupération de données | Datenrettung | Recupero dati | データ復旧 | 데이터 복구 | 数据恢复 | Восстановление данных | De terugwinning van gegevens | Ανάκτηση δεδομένων
Sitemap Site map1 2 3 4 | Spanish1 2 3 | French1 2 3 | German1 2 3 | Italian1 2 3 | Portuguese1 2 3 | Japanese1 2 3 | Korean1 2 3 | Chinese1 2 3 | Russian1 2 3 | Dutch1 2 3 | Greek1 2 3
Data Recovery Book English | Spanish | French | German | Italian | Portuguese | Japanese | Korean | Chinese | Russian | Dutch | Greek