当您在C(而不是C ++)中使用strtok()
函数时,每个标记是否自动以空字节结束?你究竟要怎么检查?
如果我没记错的话,strlen()
函数在计算字符串长度时不包括终止字节。
答案 0 :(得分:3)
从手册页:
每次调用strtok()
都会返回一个指向包含下一个标记的以空字符结尾的字符串的指针。
所以简短的回答是“是”。想一想。如果返回没有nul终止,那么它就不会被标记化,因为你不会只获得令牌,你也会得到令牌和其余的字符串......
答案 1 :(得分:0)
如前所述,答案是yes
。请注意strtok
将修改原始字符串。该函数将使用null character
替换令牌字符。看看https://ideone.com/u4W2PC