基本操作符

算数操作符‘+’, '-', '*', '/', '%'.

+,---,*这三个就不说了,小学题目嘛。

‘/’号, ‘%’

‘/’号在int类型时计算结果为整数,在double等类型下才算出小数。

‘%’取余数,两个数相除取余数。

10 % 3 = 1.

移位操作符(只能运用于整数)

再说这个操作符之前,先说明,移位操作符移动的是二进制,而在32位设置下,整形数字是占32bit

拿3举例,本来3在二进制下是:0011;

在计算机下:00000000000000000000000000000011

第一位代表正负,1为负,0为正。 

那-5是在二进制中是多少

10000000000000000000000000000101

整数在计算机中的存储

整数在计算的存储不是存储整数原来的二进制表示(原码),而是存储补码。

引进概念:原码,反码,补码。

在正数中原码 = 反码 = 补码。

负数中:反码 = 原码按位取反(0变成1, 1 变成0)。符号位不变

              补码 = 反码 + 1。

 符号<<

左移符号位:<<

位移规则:左面抛弃,右面补0。(移动的是二进制位)

int a = 5; int b = a << 2;

那么b等于多少?

 代码演算一下:

符号>>

向右操作符:>>

移位规则:1.逻辑右位:左边填充0,右边丢弃。

                  2.算术右移:左边用原值符号位填充,右边丢弃

这个方法,取决于编译器。

跟>>相同,我们拿int a = -1;int b = a >> 1;示例

算术右移

 逻辑右移

 

 位操作符:&, | , ^ 

&:按位与:两个数的补码,只有都是1的时候才是1,其他情况下都是0.

拿int a = -5; int b = 3;做例子,

在编译器中实验一下 

|  :按位或

| : 有1便是1。

还是拿 int a = -5, int b = 3做个栗子。

在编译器中验证一下

冰狗,对了。

^  按位异或

 ^ : 相同为0,相异为1.

老规矩,-5,3上路。

来来来编译器见面。

没错呢。

赋值操作符

这个东西,我也不知道咋写。直接来看代码。

什么都不要问,”=“  就是赋值符号。

复合赋值操作符

这东西没的说啊,就刘姥姥如小木屋————一眼到底。

这个就说几个吧。

!: 逻辑反操作

让真的数变假(也就是为0)假的数变真,(也就是为1)

sizeof

sizeof是求变量所占空间的大小的

不同类型,占据的内存空间是不同的。

关系操作符

没啥好说的,但是有一个小技巧,在判断一个变量是否等于一个常数时候,可以常数在前面,变量在后边,容易找寻BUG。

逻辑操作符

逻辑操作符&&与||

&&:逻辑与

它是讲条件并且的关系。

&&:假如一个条件是假,就不再算下面的条件。

这个答案应该是啥?

 

 

||:逻辑或

它是条件或者的关系。例如:

||:当做操作符为真的时候,不再向右计算

如图:

 

条件操作符

说白了,三个式子,第一个判断式,加入成立,就输出第二个式子,不成立第三个式子。

例子:比较大小。

假如用if语句来写:

 

换个方法:

简洁很多,可以减少代码量,提升效率。

逗号表达式

它将很多个式子用",”隔开,从左到右最后表达出来的是最后一个式子。

我们来看一段好玩的代码:

c等于多少?

我们只看最后一个式子的结果,把最后一个式子的结果赋给c。

 下标引用、函数调用和结构成员

1.[]下标引用操作符。

数组里的,符号是从0开始的,没啥好说的。

如图吧:

数组[]里的排序从0开始,而不是1.

2.()函数调用操作符

没得讲.....

3.访问结构体的成员(其实是指针)

. 结构体.成员名

-> 结构体指针->成员名

我们直接上图:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 12
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
Wireshark是一个网络协议分析工具,它提供了强大的过滤器系统来帮助用户快速定位和分析网络流量。其过滤器语言支持一系列基本操作,用于构建复杂的筛选条件。以下是Wireshark过滤器支持的一些基本操作: 1. `==` (等于):比较两个字段是否相等。 2. `!=` (不等于):检查字段是否不等于指定值。 3. `<` (小于):比较字段值是否小于特定值。 4. `>` (大于):检查字段值是否大于某个值。 5. `<=` (小于或等于):筛选出字段值小于或等于指定值的包。 6. `>=` (大于或等于):筛选出字段值大于或等于特定值的包。 7. `&&` (逻辑与):连接两个条件,如果两者都满足则匹配。 8. `||` (逻辑或):连接两个条件,只要满足其中之一就匹配。 9. `!` (逻辑非):取反条件,如果条件不成立则匹配。 10. `~` (位操作):对二进制数据进行按位操作,如查找特定位设置或清零的包。 11. `[]` (区间):指定字段值在某个范围内的包。 12. `contains` 或 `like`:查找包含特定字串的字段。 使用这些操作,你可以构造如"src ip == 192.168.1.1 && port == 80"这样的复杂过滤器,以精准地查看特定的网络活动。相关问题: 1. Wireshark过滤器中如何使用逻辑非操作`!`? 2. 如何利用区间操作`[]`在过滤器中筛选特定的端口范围? 3. 举例说明如何使用`contains`操作在Wireshark过滤器中搜索特定的数据包?
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值