C strtok 函式使用

2021-06-08 02:34:53 字數 873 閱讀 7500

#include

#include

#include

using namespace std;

void main()

void convertxx(char *str,char *dates,char *times)

p++;

}p=str;

char *token;

token=strtok(p," ");

int i=0;

while(token)

if(i==3)

if(i>3)

token=strtok(null," ");}}

上面的函式實現字串「2012-10-23 02:40:23」轉為格式"20121023"和串"024023"兩個字串並且分別賦給兩個陣列變數。

linux c函式幫助文件中定義strtok函式如下:

char * strtok(char *s,const char *delim);

函式說明:strtok()用來將字串分割成乙個個片段。引數s指向欲分割的字串,引數delim則為分割字串。當strtok()在引數s的字串中發現到引數delim的分隔符是則會將該字元改為\0字元。在第一次呼叫時,strtok()必須給予引數s字串,往後的呼叫則將引數s設定為null,每次呼叫成功則返回下乙個分割後的字串指標。

如果已無分割則返回null。

此函式的用法很詭異,希望大家注意。

需要說明的是delim引數可以是多個字元。如:(冒號),(逗號);(分號) (空格)等。

如果char *delim="-; ";//減號分號空格

表示在strtok目標字串中只要出現減號或者分號或者空格,都會把這個字元置為\0,而不是把同時出現這三個字元的串置為\0.

函式 使用函式指標操作函式

設計乙個名為calculate 的函式,他接受兩個double 值和乙個指向函式的指標,而被指向的函式接受兩個double引數,並返回乙個double值 calculate 函式的型別也是double,並返回被指向的函式值用calculate 的兩個double引數計算得到的值。例如,假設add 函...

eval函式 php PHP eval函式使用介紹

eval echo hello world 上邊 等同於下邊的 echo hello world 在瀏覽器中都輸出 hello world 運用eval 要注意幾點 1.eval函式的引數的字串末尾一定要有分號,在最後還要另加乙個分號 這個分號是php限制 2.注意單引號,雙引號和反斜槓的運用。如果...

函式 函式使用效能

以便 defer 能在合適時機執行 錯誤的例子 func example 這地方有個問題,example 函式是乙個加鎖操作。m.unlock 只有在 example 函式結束的時候才執行,那麼每次迴圈實際上是執行m.lock 語句,這個時候解鎖操作會被延遲到函式結束。很顯然這個邏輯並不是我們想要的...