对一个char类型的数 逻辑取反后,此时的类型长度是4字节还是1字节


int main()
{
    char c=1;
    printf("%u\n",sizeof(!c));
    return 0;
}

```
//在visual 2010内 ,此时的输出结果为4,而在visual 2022内此输出结果为1,这该怎么解释

不管你类型是什么,只要能通过sizeof(!变量))而且不报错的这种操作,得到的大小永远是1个字节