回 帖 发 新 帖 刷新版面

主题:一个小错误 来看看~~~

#include "stdio.h"
#include "stdlib.h"
void main()
{
    int n;
    char k;
    scanf("%d",&n);
    char *ch=(char *)malloc(n*sizeof(char));
    for(int i=1;i<n;i++){
        printf("%d:",i);
        scanf("%c",&k);
        ch[i-1]=k;
    }

}
各位大侠们帮忙看看这个程序的错误哦,为什么不能一个个输入字符呢:THX~~~

回复列表 (共1个回复)

沙发

一个个输入字符和你的终端设置有关系的。termios。因为你的输入只是进入了缓冲区,只有回车之后才被你的程序所接受。

这么说可能太复杂了。:)

如果你用Linux,你可以借助termios函数库帮你实现一个个字符的输入。

我来回复

您尚未登录,请登录后再回复。点此登录或注册