操作符..

如a+b有两个操作数的叫双目操作符

如 !a 叫单目操作符

值得一提的符号

%


int main()
{
	int a = 8 % 6;//%取余数
	printf("%d", a);

	return 0;
}

<< 

int main()
{
	
	int b = 456 << 1;//指它的二进制位向左移一位,基本可以等效为数字翻倍
	printf("%d", b);
	return 0;
}

>>同理把数字除2

+= -= %=

操作符.._第1张图片

!为反逻辑

0为假 非0为真

int main()
{
	
	int b = 456 >> 1;
	printf("%d", !b);//这样运行的b结果为0
	return 0;
}

sizeof也是操作符 计算类型或变量的大小

sizeof不是函数

int main()
{
	
	int a = 0;
	printf("%d\n", sizeof(long long ));//8
	printf("%d", sizeof(a));//4 a的括号可以省略
	return 0;	
}

sizeof计算数组总大小 单个数大小 数组个数 单位是字节


int main()
{
	
	int a[30] = { 1,2 };
    printf("%d\n", sizeof(a));//120
	printf("%d\n", sizeof(a[0]));//4
	int b = sizeof(a) / sizeof(a[2]);//求数组的个数
    printf("%d", b);//30
	return 0;	
}

~ 把数字二进制中所有是1的变为0,0变为1(可等同于数字加一再乘负一)


int main()
{

	int a = 100;
	printf("%d", ~a);
	return 0;
}

操作符.._第2张图片

关于++的前置和后置


int main()
{
	int a = 10;
	int b = ++a;//结果是11 11。 因为++前置 先++,后使用。
	printf("%d\n", a);
	printf("%d", b);

	return 0;
}

后置++ 结果是a=11 b=10 先使用,后++

强制类型转换

#include
int main()
{
	int a = (int)114.514;//在这里加int避免警告,强制变为整数
	//个人感觉这个字符实在是不知所谓

	printf("%d\n", a);
	return 0;
}

&&并且 ||或者

#include
int main()
{
	int a = 10;
	int b = 5;
	int c = a && b;
	printf("%d\n", c);//结果为1,只要a和b有一个为0结果就为0 
	//不要紧,两个我都一样的...
	return 0;
}

||则是有一个为真则结果为1 只有所有结果为0时结果才为0

关于三目操作符

输出最后一个式子的结果为3

操作符.._第3张图片

[]

操作符.._第4张图片

你可能感兴趣的:(数据结构)