您的位置:首页 > 编程语言 > C语言/C++

C语言学习笔记 运算符初步介绍

2016-01-29 21:04 447 查看
运算符:算术操作运算、逻辑运算、位运算、赋值运算、内存访问符号;

一、算术运算符 + - * / 

注意: int  a = b*10 ; 可能需要多个CPU周期才能完成赋值,甚至可能需要软件模拟的方法才能实现乘法。如果是ARM裸机跑程序的话,有可能因为没有*乘法的函数,而无法完成赋值。

int m=n+5; CPU只需要一个机器周期就能完成;

所以 在开发的过程中尽量避免使用 乘法和除法/

% 取余运算

(1)  n %m =res     则res在0到m-1范围中

  例子:给定任意一个数m,输出一个1到100的数字:  ( m%100)+1

(2) 得到M进制的一个个位数

(3)可以生成一个循环的数据结构的下标

二、 逻辑运算  :返回值      1真   0 假,后来   假 0   非假为真 非0

逻辑运算 :或||  、与 &&、 非 !

注意:

A||B  不等于 B||A,A &&B也不等于 B&&A 

f原因:在C语执行的过程中,A或B中 如果A为真则不用继续执行B,如果A为假,则继续判断B;在B或A中是先判断 B的 所以两条语句不同,其他的也同理。

可以测试 一下代码 :

#include <stdio.h>
int main ()
{
<span style="white-space:pre">	</span>int a=10;
<span style="white-space:pre">	</span>int res ;
<span style="white-space:pre">	</span>res=(a==10)||(printf("++++++++++++++++\r\n"));
<span style="white-space:pre">	</span>printf("%d",res);
<span style="white-space:pre">	</span>res=<span style="font-family: Arial, Helvetica, sans-serif;">(a==1)||(printf("++++++++++++++++\r\n"));</span>
<span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space:pre">		</span></span><span style="font-family: Arial, Helvetica, sans-serif;">printf("%d",res);</span>
<span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space:pre">
</span></span>
<span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space:pre"><span style="white-space:pre">		</span>return</span> 0;</span>
}
执行上述代码后 就会发现 第一个res中的printf函数不执行,只有当第一个逻辑判断不成立的时候才能继续执行下一跳逻辑判断语句。

三、非 !真变假, 假变真,注意取反“~”是每位取反。

 四 ? :   if  esle
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: