c++ - C: strtok 值返回 null

标签 c++ c cstring strtok

我正在尝试解析 HTTP 请求 header 。我需要拿起第一行:

获取/HTTP/1.1

然而,下面代码的输出是:

Method: (null)
Filename: (null)
Version: (null)
Client hostname: (null)

为什么?

代码:

    char *token;
    const char delimiter[2] = " ";
    token = strtok(NULL, delimiter);

最佳答案

第一次调用 strtok 时,您需要提供要拆分的字符串作为第一个参数。对 strtok 的后续调用需要使用 NULL 作为第一个参数来获取后续的分隔字符串。

祝你好运。

关于c++ - C: strtok 值返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22234361/

相关文章:

string - CMutablePointer<CString> to String in swift-language

c++ - 在 'set' 中包含一个 'struct'

c++ - getline() 后的 For 循环不执行

c++ - 如何正确读取 C++ 中的 wave 文件采样率?

c - 如何编写一个while循环,在while循环中通过malloc分配500kb内存

c - OpenCV Haar 分类器 XML 生成错误

c++ - 如何修复 R6031 - 尝试多次初始化 CRT。这表明您的应用程序中存在错误?

c++ - 我可以将参数类型分支到 C++17 中的参数包吗?

c++ - 尝试传递 CStringArray 时出现错误,无法访问类 'CObject' 中声明的私有(private)成员

谁能帮我找到这个 C 函数中的错误吗?