逻辑运算符
逻辑运算符!、&&、依次为逻辑非、逻辑与、逻辑或,这和数学上的与、或、非是一致的。逻辑非的优先级高于算术运算符,逻辑与和逻辑或的优先级低于关系运算符,逻辑表达式的值只有真和假,对应的值为 1和 0。
赋值运算符
左值 (L-value)是那些能够出现在值符号左边的东西,和右值 (R-value)是那些可以出现在赋值符号右边的东西。
求字节运算符
sizeof 是一个运算符,不像其他运算符是一个符号,sizcof 是字母组成的,用于求常量或变量所占用的空间大小。
#include <stdio.h>
void logical_operator();
void short_circuit();
void assignment();
void sizeofTest();
int main()
{
logical_operator();
short_circuit();
assignment();
sizeofTest();
return 0;
}
void sizeofTest()
{
int i = 0;
printf("i size is %d\n", sizeof(i));
}
void assignment()
{
int a = 1, b = 2;
a += 3;
b *= 5;
printf("a=%d\n", a);
printf("b=%d\n", b);
}
void short_circuit()
{
int i = 0;
i &&printf("短路了,我不会执行了!");
i = 1;
i || printf("短路了,我也不会执行了!");
}
void logical_operator()
{
int year, i, j = 6;
while (scanf("%d", &year))
{
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
{
printf("%d is leap year\n", year);
}
else
{
printf("%d is not leap year\n", year);
}
}
i = !!j;
printf("i value=%d\n", i);
}