这个布尔值是如何变化的 //表示布尔值的c程序 #包括 int main() { _布尔布尔瓦尔=0; int i; printf(“布尔值为”); 对于(i=0;i

这个布尔值是如何变化的 //表示布尔值的c程序 #包括 int main() { _布尔布尔瓦尔=0; int i; printf(“布尔值为”); 对于(i=0;i,c,C,),C++之前的C++版本中的++操作符的现在的特征是将布尔值设置为true;这似乎是第一个循环中发生的(修复后)。.运算符似乎没有正式为布尔值定义,但我猜您的C编译器的第二个循环只是使用奇偶校验(偶数与奇数)用于决定布尔值是真还是假的基本类整数类型。请参阅:以了解布尔递增类似于执行的or操作,因此每次都是1 在第二个循环中递减布尔值时,第一次打印将为1 下一个1-1=0 下一个0-1=-1(因为bool是一个单字节,没有符号位,它将忽略符号),所以它将再次打印1 这是循环的 希望我在第一个循环

),C++之前的C++版本中的++操作符的现在的特征是将布尔值设置为true;这似乎是第一个循环中发生的(修复后)。.运算符似乎没有正式为布尔值定义,但我猜您的C编译器的第二个循环只是使用奇偶校验(偶数与奇数)用于决定布尔值是真还是假的基本类整数类型。请参阅:

以了解布尔递增类似于执行的or操作,因此每次都是1

在第二个循环中递减布尔值时,第一次打印将为1 下一个1-1=0 下一个0-1=-1(因为bool是一个单字节,没有符号位,它将忽略符号),所以它将再次打印1 这是循环的


希望我在第一个循环中给出了答案:

对不起,实际上是布尔-Val++ +不是BoalVal--请编辑它,这样它反映在C++中的一个“布尔布尔值”的问题上没有被定义,这意味着你所看到的行为可能非常依赖于你的C编译器:
// c program to represent boolean values

#include<stdio.h>

int main()
{
    _Bool boolvar=0;
    int i;

    printf("the value of _Bool is");

    for(i=0;i<5;i++)
    {
        printf("boolvar=%i\n",boolvar);
        boolvar++;
    }
    printf("\n");

    for (i=5;i<10;i++)
    {
        printf("boolvar=%i\n",boolvar);
        boolvar--;
    }
}