登录

c/c++ 字符转换

输入a b输出为什么会有一个10结尾呢?
输出为:

97
a
32
 
98
b
10
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
    int chr;
    while ((chr = getchar()) != EOF)
    {
        cout<<chr<<endl;
        if (char(chr))
        {
            cout<<char(chr)<<endl;
        }
    }

    return 0;
}
# C++
PHP中文网PHP中文网2146 天前406 次浏览

全部回复(2) 我要回复

  • 天蓬老师

    天蓬老师2017-04-17 15:09:53

    当你输入97之后回撤这个时候其实是输入了三个字符:9 、7 、 换行, 所以会出现以下输出:
    97
    57 -> 数字9的ascii码
    9 -> 数字9字符
    55 -> 数字7的ascii码
    7 -> 数字7字符
    10 -> 换行符ascii码
    -> 这里是一个换行符

    回复
    0
  • ringa_lee

    ringa_lee2017-04-17 15:09:53

    一般要加一个get()来去掉换行符

    回复
    0
  • 取消回复发送