#include<stdio.h>
#include<stdlib.h>
int main (void)
{
bool* Str_A = (bool*)calloc(1024,1);
bool* Str_B = (bool*)calloc(1024,1);
*Str_A = true;
*Str_B = true;
*(Str_A+2) = *Str_A+*Str_B;
printf("%s", (Str_A+2)?"true":"false");
}
ли изменить I *Str_A
или/и *Str_B
в false
или нет, он всегда печатать true
. Почему?Почему всегда получается то же логическое значение?
Кто говорит 'SizeOf (BOOL) 'окончательно 1? – chris
Я протестировал минуту назад, действительно, 'sizeof (bool)' is 1 – user2967915
Вы должны проверить '* (Str_A + 2)?" True ":" false "', все равно будет всегда "true". –