操作符-->语言的粘合剂

一、算数操作符

 +    -    *    /    %
  • / 商
    除法想得到小数的结果,必须保证除数和被除数中至少有一个小数(浮点数)。
  • % 余数
    两个操作数必须为整数,返回的是整除之后的余数。

二、移位操作符

移位操作符移动的是补码

<<  左移操作符

>>  右移操作符

移位操作符移动的是二进制位
移位操作符的操作数只能为整数。

1、二进制位

  • 二进制的表示:原码、补码、反码。
    最高位是符号位-----0为正,1为负。
    正整数的原码、补码、反码相同。
  • 原码、反码、补码的关系
    原码—>反码:原码符号位不变,其他位按位取反。
    反码—>补码:反码的基础上二进制加一。
    数字在内存中的形式是补码。

-15
10000000000000000000000000001111 原码
11111111111111111111111111110000 反码
11111111111111111111111111110001 补码

2、左移操作符

左边丢弃,右边补零 —> 扩大2倍

3、右移操作符

  • 逻辑右移
    右边丢弃,左边补零
  • 算数右移
    右边丢弃,左边补原符号位(绝大部分编辑器使用)
    不能移动负数位
    例:num >> -1;(负一就是负号位)

三、位操作符

&  按位与 
|  按位或
^  按位异或

注:他们的操作数必须为整数。

  1. & 按位与 —> 有0为0,同为1则为1
  2. | 按位或 —> 有1为1,同为0则为0
  3. ^ 按位异或 —> 相同为0,相异为1
    三者都是二进制位进行比较

四、赋值操作符

=

可以给变量重新赋值

  • 复合操作符
+=
-=
*=
/=
%=
>>=
<<=
&=
|=
^=

这样写使代码更加简洁

五、单目操作符

1、单目操作符介绍

!           逻辑反操作
 -           负值
 -           正值
&           取地址
sizeof      操作数的类型长度(以字节为单位)
~           对一个数的二进制按位取反
--          前置、后置--
++          前置、后置++
 -           间接访问操作符(解引用操作符)
(类型)       强制类型转换

2、sizeof与数组

  • sizeof可以求变量(类型)所占空间的大小
  • %zu 用来打印sizeof的值,单位为字节
  • 数组名:数组名是数组首元素的地址
    两个例外:
    1. sizeof(数组名),数组名表示整个数组,不是首元素的地址
    sizeof(数组名),计算的是整个数组的大小,单位是字节
    2. &数组名,数组名表示整个数组,不是首元素地址,取出的是整个数组的地址

3、++、–类型

  • 前置++,先++,后使用
  • 后置++,先使用,后++
    -----> --类型,同理

4、强制转化

int main
{
int a = (int) 3.14;//a=3
}

强制类型转换可能会造成数据的丢失

六、关系操作符

>
>=
<
<=
!=   用于测试“不相等”
==      用于测试“相等”

注:1、在编程的过程中== 和=不小心写错

int main
{
if( 10 == a)  //当赋值时建议数在前,变量在后
}

2、 ==不能比较2个字符串的内容,实际上比较2个字符串的首字符地址

七、逻辑操作符

&&     逻辑与
||          逻辑或
  • && 当前面的条件为假,则不执行判断第二个条件
  • || 当前面条件为真,则不执行判断第二个条件

八、条件操作符(三目操作符)

exp1 ? exp2 : exp3
  • 当表达式1为真时,结果为表达式2
  • 当表达式1为假时,结果为表达式3

九、逗号表达式

exp1, exp2, exp3, …expN

逗号表达式,就是用逗号隔开的多个表达式。
逗号表达式,从左向右依次执行。整个表达式的结果是最后一个表达式的结果

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

1、 [ ] 下标引用操作符

操作数:一个数组名 + 一个索引值

int arr[10];//创建数组
 arr[9] = 10;//实用下标引用操作符。
 [ ]的两个操作数是arr和9

2、 ( ) 函数调用操作符

接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数。

#include <stdio.h>
 void test1()
 {
 printf("hehe\n");
 }
 void test2(const char *str)
 {
 printf("%s\n", str);
 }
 int main()
 {
 test1();            //实用()作为函数调用操作符。
 test2("hello bit.");//实用()作为函数调用操作符。
 return 0;
 }

3、访问一个结构的成员

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

  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
param1 = ''' <input> <lstBaimdxx></lstBaimdxx> < └------------weihubzh></ └------------weihubzh> < └------------sanlieid></ └------------sanlieid> < └------------lxuhaooo></ └------------lxuhaooo> < └------------baiminda></ └------------baiminda> < └------------shouquan></ └------------shouquan> < └------------jigouhao></ └------------jigouhao> < └------------kehuzhwm></ └------------kehuzhwm> < └------------zhjianzl></ └------------zhjianzl> < └------------zhjhaoma></ └------------zhjhaoma> < └------------bmndsqcs></ └------------bmndsqcs> < └------------kehutixi></ └------------kehutixi> < └------------caozguiy></ └------------caozguiy> < └------------weihsqgy></ └------------weihsqgy> < └------------shouqujg></ └------------shouqujg> < └------------shengxrq></ └------------shengxrq> < └------------shixiarq></ └------------shixiarq> < └------------chjianrq></ └------------chjianrq> < └------------qudaoooo></ └------------qudaoooo> < └------------qqxtbios></ └------------qqxtbios> < └------------guiylius></ └------------guiylius> < └------------beiyngzd></ └------------beiyngzd> < └------------beiyngda></ └------------beiyngda> < └------------beiyngdb></ └------------beiyngdb> < └------------beiyngdc></ └------------beiyngdc> </input> param2 = ''' <input> <lstBaimdxx> <weihubzh></weihubzh> <sanlieid></sanlieid> <lxuhaooo></lxuhaooo> <baiminda></baiminda> <shouquan></shouquan> <jigouhao></jigouhao> <kehuzhwm></kehuzhwm> <zhjianzl></zhjianzl> <zhjhaoma></zhjhaoma> <bmndsqcs></bmndsqcs> <kehutixi></kehutixi> <caozguiy></caozguiy> <weihsqgy></weihsqgy> <shouqujg></shouqujg> <shengxrq></shengxrq> <shixiarq></shixiarq> <chjianrq></chjianrq> <qudaoooo></qudaoooo> <qqxtbios></qqxtbios> <guiylius></guiylius> <beiyngzd></beiyngzd> <beiyngda></beiyngda> <beiyngdb></beiyngdb> <beiyngdc></beiyngdc> </lstBaimdxx> </input> ''' python怎么将param1转成param2
07-13

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小琚子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值