为什么我们在%c 中得到的是带有int i 的ASCII 字符?

Why do we get the ASCII characters with int i within %c?

如果您运行以下代码,您将获得 ASCII 字符,即使我们在 for 循环内的 %c 中使用 int i

#include <stdio.h>  
    
int main()  
{  
    int i;  
    
    for (i = 0; i <= 255; i++) /*ASCII values ranges from 0-255*/  
    {  
        printf("ASCII value of character %c = %d\n", i, i);  
    }  

    return 0;  
}   

你能告诉我这是怎么可能的吗,因为 ASCII 里面有字符?

printf() - 格式化打印 我们使用格式说明符来指定给定变量的格式, %d 显示整数变量值的格式说明符。 %c用于显示字符 由于 ASCII 值的范围为 0-256 , %c 将以 Integer i

打印数字的相应字符符号

计算机中的每个变量都以二进制形式存储,其值将取决于您定义的类型。例如,在内存中存储值 1010。如果将其转换为 int,它将打印 -6,如果将其转换为 unsigned int,它将打印 10。int 和 char 相同。这取决于你