第二十九章:单目运算符

#define  _CRT_SECURE_NO_WARNINGS    
#include<stdio.h>
#include <string>
int main(){
	//在C中非0为真,0为假
	int a = 10;
	printf("%d\n", !10);
	//"~"把数的二进制按位取反得到0000 1010-->1111 0101,发现这是补码。负数在内存中存的是二进制补码(以1开头的补码),正数存的是原码,但是正数的原、反、补码都一样,所以结论为正数在计算机内存中存的都是补码,打印的是源码。
	//a是有符号整型,最高位是符号位(1为正0为负)
	printf("%d\n", ~a);
	//取反发现1111 0101 以1开头,所以是补码,存储在内存中,如何打印原码?补码-->原码
	//先减一得到反码,反码除符号位全部取反得到原码 1111 0101 --> 1111 0100 --> 1000 1011
	//计算变量或数据类型所占字节大小,可以计算数组元素个数
	printf("%d\n",a);
	printf("%d\n", -a<0);
	printf("%d\n", sizeof(int));
	int b = a++ + 1;
	printf("%d\n", a);
	int c = ++a + 1;
	printf("%d\n", a);
	int e;
	scanf("%d", &e);
	//强制类型转换
	double e1 = (double)e;
	//逻辑与,2个为真才是真,一个为假就为假
	printf("%d\n", 1&&2);
	printf("%d\n", 0 && 2);
	//逻辑或,只要有一个为真就为真,两个为假才为假
	printf("%d\n", 1 || 0);
	printf("%d\n", 0 || 0);
	//三目运算
	printf("%d\n", e == 1 ? 1 : 0);
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值