gpt4 book ai didi

c++ - 如果我们向它输入一个整数,那么一个字符会给出整数作为输出,但是当一个整数被分配给它时,这不会发生。为什么?

转载 作者:太空宇宙 更新时间:2023-11-03 17:25:30 26 4
gpt4 key购买 nike

int p=89; //An integer defined and declared
char g; //A character defined
g=p; //Assigning the character the value of the integer p
cout<<g; //Here the output comes out to be "Y"
cout<<endl<<"Enter any number";
cin>>g;
cout<<g; //Here the output is coming out to be the integer you have inputted

它不应该输出一个整数而不是给出"Y"吗?它正在被分配一个整数的值?

最佳答案

当您将一个整数分配给字符变量时,它会从内存中读取整数并存储在它的位置,并在解释该 char 值时返回它的 ASCII 等效值。在将 cin 缓冲区读入字符变量 (char) 时,它会读取 char 的 1 个字节或其内存中的 ASCII 值,并将输出作为等效的 ASCII 值给出。

关于c++ - 如果我们向它输入一个整数,那么一个字符会给出整数作为输出,但是当一个整数被分配给它时,这不会发生。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59403291/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com