2011-05-01 99 views
0

我需要用C语言解析文档。我正要使用strtok函数,但我不知道它是否是最好的方法,或者只是一个令牌系统就足够了(搜索\ n,空间等)。解析文档,C

该文档的每一行的结构是:element \ n元素“x”。

感谢:-)

+0

你对行的定义与C的通常定义的行有点不一致:“由(并包括)一个''\ n''结尾的一串字符”。你将不得不做额外的工作来处理你的“线路”中嵌入的''\ n''。 – pmg 2011-05-01 10:49:20

回答

2

令牌系统如果罚款,strtok只是一个执行。但是,最好使用strtok_r,它不会将任何内部状态保持在程序的外部控制之外。

0

我不记得细节,但我在几个来源看到的strtok是不安全的作品。如果你问我,你最好自己动手。

+2

'strtok()'不是可重入的。但是,你可以使用'strtok_r()'这很好。 – che 2011-05-01 11:20:25

+0

如果你的程序没有使用共享内存线程,'strtok()'是完全正确的。 – geocar 2011-05-01 12:22:17

+0

谢谢!我将使用strtok或strtok_r – lilawood 2011-05-01 15:55:11