Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah fungsi strtok() dalam bahasa C?

Apakah fungsi strtok() dalam bahasa C?

王林
王林ke hadapan
2023-08-28 23:29:061559semak imbas

Fungsi

Apakah fungsi strtok() dalam bahasa C?

strtok() ialah sebahagian daripada fail pengepala #include Sintaks fungsi

strtok() adalah seperti berikut −

char* strtok(char* string, const char* limiter);
a

pembatas Pembatas aksara. strtok() akan membahagikan rentetan kepada token berdasarkan watak pembatas.

Kita boleh mengharapkan untuk mendapatkan senarai rentetan daripada strtok(). Walau bagaimanapun, fungsi mengembalikan rentetan berasingan kerana selepas memanggil strtok(input, limiter) ia mengembalikan token pertama.

Tetapi kita perlu memanggil fungsi pada rentetan input kosong lagi dan lagi sehingga kita mendapat NULL!

Biasanya, kami akan terus memanggil strtok(NULL, delim) sehingga ia mengembalikan NULL.

Contoh

Berikut ialah contoh fungsi strtok() daripada program C:

Demo Dalam Talian

#include <stdio.h>
#include <string.h>
int main() {
   char input_string[] = "Hello Tutorials Point!";
   char token_list[20][20];
   char* token = strtok(input_string, " ");
   int num_tokens = 0; // Index to token list. We will append to the list
   while (token != NULL) {
      strcpy(token_list[num_tokens], token); // Copy to token list
      num_tokens++;
      token = strtok(NULL, " "); // Get the next token. Notice that input=NULL now!
   }
   // Print the list of tokens
   printf("Token List:</p><p>");
   for (int i=0; i < num_tokens; i++) {
      printf("%s</p><p>", token_list[i]);
   }
   return 0;
}

Output

Apabila program di atas dilaksanakan ✎Reee

terhasil yang berikut rentetan input ialah "Hello Tutorials Point", kami cuba membahagikan perkataan mengikut ruang.

Kami mendapat token pertama dengan menggunakan strtok(input, " "). Di sini petikan berganda ialah pembatas, yang merupakan rentetan aksara tunggal!

Selepas itu, kami terus mendapatkan tag dengan menggunakan strtok(NULL, " ") dan gelung sehingga kami mendapat NULL daripada strtok().

Atas ialah kandungan terperinci Apakah fungsi strtok() dalam bahasa C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam