按分隔符分隔字符串strtok奇怪的行为

xi

我正在尝试拆分字符串,但是strtok很奇怪

我有下面的字符串,get|user=password|23|info|hello我已经尝试过使用strtok广泛使用的方法,但是不幸的是,它被=当作定界符,而且我无法解析我的字符串。因此,get正确解析比仅正确解析要好user,但不能正确解析user=password

请帮助查找问题或建议其他拆分字符串的方法。我正在为Arduino编程。

谢谢

  const char delimeter = '|';
  char *token;
  token = strtok(requestString, &delimeter);
  // Handle parsed  
  token = strtok(NULL, &delimeter);
罗斯蒂斯拉夫

cppreference

delim-指向以空终止的字节字符串标识分隔符的指针

您的方法不合适的要求为null终止您只需要输入一个地址char,但显然不能访​​问该符号以外的任何内容。strtok但是,搜索\0终止字符串的字符。因此,您正在进入未定义的行为领域。

相反,使用

const char* delimiter = "|";

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

按分隔符数量分割字符串

boost::spirit 字符串按分隔符排列

按分隔符拆分字符串

字符串开头的分隔符

分隔符字符串拆分

C - 使用 strtok 通过分隔符“/”分割字符串“mv <from> <to>”

用 N 次分隔符分隔字符串

通过多个分隔符分隔字符串并返回分隔符和分隔的字符串

UITableView分隔符的奇怪行为

通过多个分隔符拆分字符串并保留分隔符

Java Regex在分隔符和保留分隔符之间拆分字符串

如何使用较长的分隔符而不是较短的分隔符来分割字符串?

使用多个分隔符拆分字符串并保留分隔符

用“分隔符”替换字符串中的字符

按字母拆分Python字符串并保留分隔符

按找到的第一個分隔符拆分字符串

sqlite按包含逗号分隔符的数字的字符串排序

使用Oracle SQL按分隔符位置拆分字符串

JavaScript:如何按分隔符拆分字符串并将其转换为键:值对

在bash中按多个分隔符分割字符串

如何对按分隔符划分的字符串 ArrayList 进行排序

按第 n 個分隔符出現在 2 中拆分字符串

获取字符串,按分隔符拆分并插入到 Oracle 中的表过程

Crystal Report:按分隔符拆分並重新排序字符串

“ C”使用分隔符按空格分隔字符串,但在某些单词(姓,名)之间转义空格

如何用字符串分隔符分割字符串?意外的String.Split(“ <br>” .ToCharArray())行为

用逗号分隔符分隔字符串,但用[]括起来时不分隔

将数组转换为字符串,使用分隔符分隔字符串-JavaScript

用分隔符“,”分隔字符串,并在字符串中保留空格