Почему gcc поддерживает логический тип с std = gnu89?Сначала я думаю, что gcc не поддерживает это.
Чтобы проверить это, я написал один файл c, как показано ниже.
#include <stdio.h>
#include <stdbool.h>
int main(int argc, const char *argv[]) {
bool x;
printf("size of bool:%lu\n",sizeof(x));
return 0;
}
И я запустил gcc:
$ gcc -std=gnu89 my_ex.c
Но это удалось.
Можем ли мы использовать логический тип, даже если с -std=gnu89
?Если так, то в чем причина?