比如a.txt 文件,
string str;
然后每一行我用的是getline(str,'\n')函数来提取
当内容是: aaa 111 222 333 fff ZZZ
时,怎么分别把他们存入不同的变量中。因为数字和字母,ZZZ还是大写字母
最后想输出这样的命令行:
aaa
111
222
333
fff
ZZZ
有人说用strtok
是很失败的方法,具体哪里不好呢?,我见其他老一辈的喜欢用char 字符数组来一点一点切割,感觉效率很低,因为要写一大堆
看使用的场景吧,因为strtok会对原始字符串做修改,所以如果在一些不希望破坏原始数据的场合下需要复制一份原始字符串在进行解析。不过个人觉得用char 字符数组来一点一点切割是一个重复造轮子的工作。已经有strtok了,而且很好用,为什么不用呢?
对于你说的喜欢用char 字符数组来一点一点切割的老一辈,我并不清楚是些什么样的老一辈。不过在一些著名的工具源代码里面,比如fping的源代码里面可以看到strtok的使用。