我随机在 StackOverflow 上冲浪。看到一个问题我顿时一头雾水。为什么我们可以将整数值赋给 char 变量?
代码片段:
#include <stdio.h>
int main()
{
char c = 130;
unsigned char f = 130;
printf("c = %d\nf = %d\n",c,f);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
输出:
c = -126
f = 130
Run Code Online (Sandbox Code Playgroud)
我一直认为值必须分配给正确的类型标识符,为什么我们可以这样做?