2019年1月22日学习日记

今天的题比较难,但是学到了新知识。
"^"在C语言中为异或。在【布尔值运算】中:真异或假的结果是真,假异或真的结果也是真,真异或真的结果是假,假异或假的结果是假。就是说两个值不相同,则异或结果为真。反之,为假。 在【二进制值运算】中:不同为1,相同为0,如1001异或1010等于0011。异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:00=0,10=1,01=1,11=0(同为0,异为1),这些法则与加法是相同的,只是不带进位。
"“在C语言中为异或,就是"不同为1,相同为0”,11=0 0^1=1 0^0=0
举个例子:3^5=?,现将3、5转化为二进制,3=(0011)B 5=(0101)B
0011
^ 0101
————
0110
0110的十进制数是6,所以3^5=6。
typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。typedef 行为有点像 #define 宏,用其实际类型替代同义字。不同点是 typedef 在编译时被解释,因此让编译器来应付超越预处理器能力的文本替换。
知识比较难理解,还需要好好消化,明天加油吧!

你可能感兴趣的:(学习日记)