之前列举了一些操作符,并初步了解。
这里,主要学习一下乘除两个操作符,乘用*而不是×。
除法则有 /和%两种,前者在整数计算中取商,后者则是取模,即取余。
在下图中,为了计算9÷2的结果,需要使用小数即浮点数float,这时打印出来的结果便是4.5,而int下打印则是4。
以上是算术操作符。
稍微难以理解的是移位操作符,比如<<和>>。分别代表左移和右移。
比如整数a = 2,b = a << 1。就是把a转换成二进制数字并向右移动一位,二进制的最大位数是32位,所以就是10变成100,100就是b在二进制下的数值,所以b=4.
右移同理,这需要更多的计算。
赋值操作符之前学习过了,不再赘述,在循环计算中有比较重要的作用。
最后是单目操作符,多目操作符譬如+需要a和b两个数值同时进行操作,而单目只需要一个数值a。
在计算机中,0表示假,非0表示真,这或许解释了为什么程序最后是以return 0作为结尾,因为如果不回到0,表示真,程序还要继续运行。所以return 0标识程序的结束和终止。
其中!就表示逻辑反操作,假设a = 0,那么!a = 1。即a表示假,!a表示真,反之亦然。这种单目操作符在if引导的选择语句中起到了很方便的作用,真和假只需要简单的表示。
之前学习过计算字符和字符串的大小的sizeof,这也是一种单目操作符,结合学习过的数组知识和除法的知识,就可以计算一个数组内的元素数量。用整个数组的大小,除以这个数组每个元素的大小就可以得到我们的结果。
这里还是要复习一下字节的有关知识,arr由10个0组成,每个0的字节大小都是4,所以整体是40。
接下来,关于C语言的基础知识快要结束了,需要结合教科书开始实际运用了。