#include<stdio.h>
#include<conio.h>
void main()
{
if(sizeof(int)>=-2)
printf("True");
else
printf("False");
}
Когда я пытаюсь скомпилировать этот фрагмент кода с помощью Turbo C++, он возвращает False вместо True. Но когда я попытался напечатать значение int, программа возвращается 2.Что возвращает sizeof (int) в этом случае?
Как это возможно? а sizeof(int)
возвращает 2 и да 2> = - 2.
Почему вы используете TurboC++? Он не поддерживается и не соответствует стандарту ... Попробуйте [GCC] (http://gcc.gnu.org/), например. на Linux. –
[Целочисленные правила продвижения.] (Http://stackoverflow.com/questions/5563000/implicit-type-conversion-rules-in-c-operators) – jrok
Вы всегда можете 'std :: cout << sizeof (int) <
juanchopanza