ボイドスプリット(チャー *のSRC、CONST のchar *セパレータ、チャー ** DEST、INT * NUM) { / * ソース列src(BUFアドレス)の最初のアドレス 区切り文字区切り指定 アレイDESTは、サブストリングの受信 num個の分割サブストリングの数 * / チャー * pNext; int型の COUNT = 0 ; IF(SRC == NULL || strlenを(SRC)== 0)// 着信アドレス長がヌルまたは0である場合、直接終了 返す; IF(セパレータ== NULL || strlenを(セパレータ)== 0)// 指定されていない分割文字列は、直接終了 返す; pNext =(char型 *)はstrtok(SRC、セパレータ); //が使用する必要があります(のchar *)は必須の変換(一部のコンパイラを書きませんが、ポインタのエラーは、発生しません) しばらく(pNext =!NULL){ DEST ++ = * pNext; ++ COUNT; pNext =(チャー *)はstrtok(NULL、セパレータ); // なければならない(チャー*)がキャスト } * NUM = COUNT; } / * INTのmain() { int型I ; [] bufをchar型= "www.baidu.com、www.taobao.com、www.csdn.com、www.python.org"; //戻りデータを受信するためのアレイ。サブ分割十分に大きい限り、ここで設定した比率列配列番号。 [8] * revbufチャー= {0}; //ストア細分文字列の 分割ストリングの数@ NUM = 0 INT; スプリット(BUF、 ""、revbuf、&NUM); //関数が分割されている呼び出し 各コンテンツ//返された出力のため のために(I = 0;私はNUM <; Iは++){ // lr_output_message ( "%Sの\のN-"、revbuf [I]); のprintf( "%S \ N-"、revbuf [I]); } 戻り0; } / *
Dev C ++の結果で:
www.baidu.com
www.taobao.com
www.csdn.com
www.python.org