c - 如何获取标准输入的第一个字符并丢弃其余字符?

标签 c

我知道我可以使用 getchar() 获取一行标准输入的第一个字符,但我想要每一行的第一个字符。有没有一种函数可以用来删除输入标准输入的字符串的其余部分(如果它超过一个字符)?如果不是,我应该考虑使用什么方法来摆脱标准输入行的其余部分?

最佳答案

char buf[100];
while(fgets(buf,sizeof(buf),stdin) != NULL)
{
   if(strlen(buf)>0)
      buf[1] = '\0';
   printf("%s",buf);
}

使用 fgets() 读取整行,并在第一个字符后以 nul 终止它。

关于c - 如何获取标准输入的第一个字符并丢弃其余字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28882907/

相关文章:

c - 为什么是 "Segmentation fault(core dumped)"?

c - 使用关键字 'struct' 声明结构对象并在 malloc 中

C fabs 返回整数

c - 该算法对于查找字符串的句点是否正确?

c - 具有 2 种不同 key 类型和最小冗余码的树数据结构

c - 如何使用shell命令刷新

mysql - 在静态库中链接 Mysqllib (MAC OS X.8.4, Xcode 4.6.3)

c - 如何使用递归查找数字中的最小元素 [C]

c - 嵌入式系统调试——我应该使用输出/日志文件吗?

c - while 循环意外(字符到 int 的转换)