strtok() 字串切割函式

本篇文章將要介紹 strtok() 函式。

#include <string.h> //C
#include <cstring> //C++

功能

遇到特定符號時,將字串切割。
舉例:將 2021/8/7 中的數字挑出來。

說明

  • strtok() 會修改原始字串,將「切割符號 (像是上面舉例的 / )」改成 ‘\0’。
  • 單次呼叫只能完成一次切割,因此需使用 while。
  • 切割過程中,在呼叫一次之後,字串必須設為空(NULL)。

用法

char str[] = "2021/8/7"; //字串
char delim[] = "/"; //切割符號

char *token = strtok(str, delim);

while(token != NULL){
  printf("%d ", atoi(token)); //使用atoi()函數將string轉int
  token = strtok(NULL, delim);
}

結果:2021 8 7

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *