首页 热点资讯 义务教育 高等教育 出国留学 考研考公

以制表符和空格作为分隔符,应如何切割字符串

发布网友 发布时间:2022-04-22 11:47

我来回答

3个回答

热心网友 时间:2023-05-18 06:51

比较通用的有两种方法:
1.利用sscanf,例子如LS。
sscanf(a,"%s%s",b,d);这里把源字符串a按%s格式读入到字符串b和d中。
%s的含义是读子字符串,这个字串是不含空格的。遇到空格就会结束读入。
2.自己写分割字符串函数。
典型的方法是利用strchr(s,' ')在s中找到第一个空格的指针,然后对指针自增得到不包含这个空格的子串,再把源串的空格改为'\0',这样就可以通过指针引用符合条件的子串。重复这一操作可以得到各个子串。
方法2的好处是比较自由,例如的在源串中含有多个空格而只需要分割成两个部分时,用方法1就比较难控制具体以哪个空格为界分割,而方法2可以自己储存满足条件的空格的指针来完成目的。
====
[原创回答团]

参考资料:原创

热心网友 时间:2023-05-18 06:52

是的
以%s输入时,遇到一个空格,(之前输入的)即为一个字符串。
即想输入多个字符串时,之间用空格分隔。

热心网友 时间:2023-05-18 06:52

//---------------------------------------------------------------------------

#include <stdio.h>

int main(void)
{
char a[]="abc def";
char b[10],d[10];
sscanf(a,"%s%s",b,d);
puts(b);
puts(d);
return 0;
}
//---------------------------------------------------------------------------

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com