c - 使用scanf在C中读取多个字符数组

标签 c

  char a[100],b[100],c[100];
  scanf("%[^\n]",a);
  printf("%s",a);
  scanf("%[^\n]",b);
  printf("%s",b);

编译器似乎正在读取第一次读取,但跳过了第二次读取。为什么会发生这种情况?

最佳答案

由于未处理输入 使用fgets()

试试这个:-

char a[100], b[100], c[100];
fgets(a, 100, stdin);
printf("%s", a);
fgets(b, 100, stdin);
printf("%s", b);

关于c - 使用scanf在C中读取多个字符数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51710295/

相关文章:

c - 编辑控件和 WM_CONTEXTMENU 消息

c++ - C/C++ 中设置的最低有效位的高效除法

c - 如何读取 ebpf 中的堆栈跟踪内核端?

C函数声明

c - 如何在linux中添加graphviz库?

javascript - crontab 不打印所有数据

c - uint32_t 有 28 位而不是 32 位

c - 如何在C中通过函数创建3D矩阵?

c - 指向二维数组列的指针

c - 在 esp8266 上发送多播?