c++ - 在 C++ 中使用 strtok 解析命令行参数

标签 c++ strtok

我正在尝试使用 strtok 解析命令行参数。在我进入一个循环之前我得到了一个成功的标记,但是一旦我进入我的 while 循环来标记我的其余参数,它就停止工作有什么想法吗?代码:

int main(int argc, char *argv[])
{
char *t = NULL;
t = strtok(*argv," ,.-");
while (t != NULL)
{
    cout << t << endl;
    t = strtok (NULL, " ,.-");
}
return 0;
}

最佳答案

这不是 strtok 的工作方式。对 strtok 的后续调用将继续处理在第一次调用中提供的第一个参数。 strtok 不应用于此,因为参数已经被标记化,即它们不在一个单独的字符数组中。

关于c++ - 在 C++ 中使用 strtok 解析命令行参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21816537/

相关文章:

c++ - 在程序中一起使用 getline 和 strtok 的问题

c++ - 如何在构造函数中使用初始值设定项设置具有相同值的二维数组?

c++ - 二维字符数组到 CUDA 内核

c++ - VST 前瞻和 setInitialDelay()

c - strtok() 和空字段

c - 将字符串拆分为标记,忽略 ""中包含的子字符串

c++ - 按升序对特征向量 Xf 进行排序

c++ - Scons 和 Boost.Test,我的测试项目无法链接到我的主项目目标文件

c - strtok() 给出意想不到的结果

c - 理解 strtok 返回的指针