-2

如果我有 3 个来源,如“ab c”,如何将 a 与 b 与 c 分开?

struct target *t = target_start;
    char *source_start = p_colon+1;
    while (*source_start == ' ' || *source_start == '\t')
      { source_start++; }
    char *source_end = source_start;
    while (*source_end == ' ' || *source_end == '\t')
      { source_end--; }
    char *p_space = strchr(source_start,' ');
    //while(p_space != NULL)

//list_sources_append(&sources, source_start);
list_targets_append(&sources, t->source = source_start);
source_end++;
*source_end = '\0';
4

3 回答 3

4

查找 strtok() 函数以将字符串分解为一系列标记。

于 2012-04-26T04:30:39.223 回答
2

假设文件名由空格分隔,并且不包含任何空格,最简单的方法可能是sscanf(input, "%s %s %s", a, b, c);

于 2012-04-26T04:41:21.653 回答
2

使用 isspace(),应该可以。

于 2020-12-18T08:11:15.010 回答