c - 在 c 中跳过空格但不换行而不中断并继续

标签 c arrays

我想从用户读取字符并将字符分配给字符数组。但我想跳过除 \n(换行符)之外的空格。当按下 \n 时,循环将结束。我该怎么做 ?我无法使用 breakcontinue。感谢您的所有赞赏回答。

char *
get_set(char *set) 
{
      char inset[10];
      char ch = ' ';
      int i = 0;

      while(ch != '\n'){
          inset[i] = scanf(" %c", &ch);
          i++;
      }
      set[strlen(inset)] = '\0';
      return (set);
}

最佳答案

char *get_set(int size, char *set){// size : size of set as buffer size
    char ch;
    int i;

    for(i = 0; i < size-1 && (ch=getchar()) != '\n'; ){
        if(!isspace(ch))
            set[i++] = ch;
    }
    set[i] = '\0';
    return set;
}

关于c - 在 c 中跳过空格但不换行而不中断并继续,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27343072/

相关文章:

c# - XNA 绘制并创建对象数组

javascript - 检查字符串是否包含子字符串而不使用indexOf - Javascript

javascript - 无法通过 AJAX 将多维数组从 JavaScript 发送到 PHP

C - 使用 malloc 分配的内存过多

javascript - 如何基于这个简单对象构建这个复杂的数组

c - 传递 argv 语句的不同答案

c - #define 的优点而不是在嵌入式中创建函数

c - 使用 nftw 发出警告

c - 如何使用 kseq.h 解析 FASTA 文件

c - 逗号运算符 , 有什么作用?