#include <iostream>
int main()
{
std::cout<<sizeof(0);
return 0;
}
Здесь sizeof(0)
- это 4
в C ++, потому что 0
- это целочисленное значение.
Но, если я напишу так:
std::cout<<sizeof(!0);
здесьsizeof(!0)
- это 1
.Но !0
означает, что он печатает 1
, который также имеет тип int
.
тогда, почему sizeof(!0)
печатает 1
вместо 4
?Что мне здесь не хватает?