C中字符串分割函数strtok的一个坑
2024-08-20 06:19:52
strtok的典型用法是:
p = strtok(s4, split);
while(p != NULL){
printf("%s\n", p);
p = strtok(NULL, split);
}
需要注意的是:如果s4是字符串常量,运行这一段代码会报出段错误。因为strtok为了处理方便,会更改字符串s4中的一些字符(将分隔符split更改为'\0'),而字符串常量是不能更改的,所以会报段错误。
第二个需要注意的点是:strtok处理的过程中会更改字符串s4中的一些字符(将分隔符split更改为'\0'),可恶的是,它处理完之后还不会给你再改回来。。。。被strtok强奸后的s4已经废了,千万不要再拿来用了。
所以,永远不要用strtok!Do It yourself.
最新文章
- [LeetCode] Heaters 加热器
- linux管理进程的链表
- Intellij IDEA 快捷键整理(TonyCody)
- 最近几天玩freebsd奋斗成果总结
- Tableau修改参考线上显示的标签
- spring mvc 配置对静态资源的访问
- node设置cookie
- ckeditor增加上传图片的功能
- CodeForces 546C(队列)
- 开心菜鸟系列学习笔记------javascript(4)
- linux环境ubuntu: pushd: not found
- ural 1119. Metro(动态规划)
- CSS<;img>;与<;a href>;字体同行显示方法与对齐
- vsftp配置文件详解
- const修饰指针+volatile +restrict
- [hdu3966]Aragorn&#39;s Story
- LeetCode: Pascal&#39;s Triangle 解题报告
- java工具类POI导出word
- win, cmd下安装mysql(win真tm难用)
- Comparable比较器和Comparator比较器
热门文章
- 解决sqoop报错:java.lang.OutOfMemoryError: Java heap space
- Facebook 工程师是如何高效工作的?
- P值(P-value),“差异具有显著性”和“具有显著差异”
- Windows 7目录
- Retrofit 简介 wiki 文档
- 30条技巧提高Web程序执行效率
- 通过小实例谈谈javascript的间隔调用和延时调用
- 使用Git将本地项目上传到Github操作详解
- 关于vue单页面应用总是先出现主页一闪而过的现象
- scala 学习笔记十二 继承