簡體   English   中英

C ++ strtok函數拆分詞

[英]C++ strtok function split words

我要在C ++中編寫一個名為splitLine()的函數。 有人可以幫忙嗎? 我真的很困惑

splitLine () {

    string temp = aLine;
    string *tempLine =  strtok(temp, " ");
    free(temp)
    countNum = sizeOf(tempLine);

   }

您誤解了說明。

strtok函數對nul終止的char數組(也稱為C字符串)而不是C ++字符串進行操作。 因此,創建一個臨時的“字符串”實際上意味着

// create temporary string which is a copy of aLine
char* temp = new char[aLine.size() + 1];
strcpy(temp, aLine.c_str());

// extract words from temp
...

// free temporary string
delete[] temp;

strtok將臨時字符串分解成單詞意味着寫一個循環 strtok提取一個單詞。 我相信您可以在互聯網上找到有關此示例。 所以我留給你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM