将字符串拆分为单词

时间:2015-08-14 13:37:22

标签: c

我有以下问题:

// Basically I am reading from a file and storing in local array.

char myText[100] = "This is text of movie Jurassic Park";

// here I want to store each work in to dictionary

st.insert(&myText[0]); // should insert "This" not till end of sentence.

// similarly for next word "is", "text" and so on.

我如何在C中执行此操作?

3 个答案:

答案 0 :(得分:3)

为此,您将使用strtok function

char myText[100] = "This is text of movie Jurassic Park";
char *p;
for (p = strtok(myText," "); p != NULL; p = strtok(NULL," ")) {
    st.insert(p);
}

请注意,此函数通过在分隔符所在的位置添加NUL字节来修改其解析的字符串。

答案 1 :(得分:0)

你可以使用strtok()。 http://www.cplusplus.com/reference/cstring/strtok/

对于C,您需要包含。

答案 2 :(得分:0)

如果您只想分隔空格,基本上可能需要strsplitstrtok。 看看Split string with delimiters in C