c 字串分割函式

2021-07-12 04:10:49 字數 1233 閱讀 1601

◆ 使用strtok函式分割。

原型:char *strtok(char *s, char *delim);

strtok在s中查詢包含在delim中的字元並用null('\0')來替換,直到找遍整個字串。 

功能:分解字串為一組字串。s為要分解的字串,delim為分隔符字串。

說明:首次呼叫時,s指向要分解的字串,之後再次呼叫要把s設成null。

strtok在s中查詢包含在delim中的字元並用null('\0')來替換,直到找遍整個字串。

返回值:從s開頭開始的乙個個被分割的串。當沒有被分割的串時則返回null。

所有delim中包含的字元都會被濾掉,並將被濾掉的地方設為一處分割的節點。

使用例:

#include 

<

stdio.h

>

#include 

<

string

.h>

intmain(

intargc,

char

**argv)

#include 

<

stdio.h

>

#include 

<

string

.h>

intmain(

intargc,

char

**argv)

return0;

} out 值: 

aaaa

bbbc

eeabc

strsep()  

◆ 使用strstr函式分割。

原型:extern char *strstr(char *haystack, char *needle);

用法:#include

功能:從字串haystack中尋找needle第一次出現的位置(不比較結束符null)。

說明:返回指向第一次出現needle位置的指標,如果沒找到則返回null。

使用例:

#include 

#include

int main(int argc,char **argv)

return 0; }

out 值: 

aaaa

bbbc

eestrtok比較適合多個字元作分隔符的場合,而strstr適合用字串作分隔符的場合。

C 字串分割函式

平時刷 leetcode 劍指 offer 等可能不會用到,但在找工作做筆試題的過程中還是會經常用到的,c 標準庫裡面沒有字元分割函式split,這裡做個總結。方法1 利用 stl 實現 include include include using namespace std vector split...

字串分割函式

這幾天處理字串,突然遇到字串分割問題,上網查了一些資料後,找到這兩個函式,strtok與strsep函式。網上舉的例子千篇一律,下面我根據函式的實現原始碼,記錄一下使用說明,供大家討論,歡迎大牛拍磚!ps 找個庫函式原始碼的 查詢 真不容易,先找到了這個 之後,發現了經常去找軟體的oschina有原...

C 的字串分割函式

c 的字串沒有分割函式,因此需要自己寫方便使用。而受到開發工具的影響,有很多用起來比較麻煩啦,下面這個比較不錯奧。用stl進行字串的分割 涉及到string類的兩個函式find和substr 1 find函式 原型 size t find const string str,size t pos 0 ...