打印ASCII字母,始终在最后打印10

问题描述

我是C和ASCII数字的新手,所以我使用一个代码示例来打印ASCII数字

int main(){

    int c;
    while ((c = getchar()) != EOF){
        printf("%d\n",c);
    }
}

“ d”的输出

100
10

无论我输入哪种字母,结果都将是该字母的ASCII码,最后也将是10。我不确定这十个来自哪里。

解决方法

这是在输入行末尾换行符的代码。

如果您想在行尾停下来而不要包含它,请添加另一张支票。

    while ((c = getchar()) != EOF && c != '\n'){
        printf("%d\n",c);
    }