wzy-666 2018-12-14 05:58 采纳率: 80%
浏览 735
已采纳

C语言getch()函数连用问题

#pragma warning(disable:4996)
#include "stdio.h"
#include "stdlib.h"
#include<conio.h>

char mygetch()
{
    char ch = '\n';
    while ((ch = getch()) == '\n');
    return ch;
}

int main() {

    char a = mygetch();

    char b = mygetch();

    printf("'%c' and '%c'", a, b);

    system("pause");
}

调试的时候只输入一个1,结果a被赋值为1;b自动被赋值为空格。(调试的时候输入法是英文)
图片说明

请问怎么才能按下1的时候,赋值1给a,而b没有赋值,然后再按2,b被赋值2,然后显示结果?

  • 写回答

2条回答 默认 最新

  • threenewbee 2018-12-14 06:24
    关注

    如果问题得到解决,请点我回答左上角的采纳和向上的箭头,谢谢

    #include "stdio.h"
    #include "stdlib.h"
    
    char mygetch()
    {
        char ch = '\n';
        while ((ch = getchar()) == '\n');
        return ch;
    }
    
    int main(){
    
    char a = mygetch();
    
    char b = mygetch();
    
    printf("'%c' and '%c'", a,b);
    
    system("pause");
    
    }
    

    图片说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?