鱼C论坛

 找回密码
 立即注册
查看: 2051|回复: 5

[技术交流] <每日一帖>---第四贴----c必知常识

[复制链接]
发表于 2016-8-15 21:21:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我又来喽!!!! 首先尼,欢迎大家再次滴到来,再次表示感谢。(让我低调的装个深沉

               每天都能给大家带来知识,也是我的快乐,我也不会发什么特别技术的帖子,只是希望刚接触的小白能够少走弯路,能够更好的进入这个编程道路,让我的苦逼换来你们的幸福,那么进入正题,位运算符的问题

              首先呢,没接触过位运算符的同胞们,我就先稍稍的普及一下知识。告诉你们这些能干啥用,至于怎么用的好呢,靠自己喽。

                     1>   按位与运算符:   & 按位与 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0
                                                       | 按位或 两个相应的二进制位中只要有一个为1,该位的结果值为1
                                                       ^  按位异或 若参加运算的两个二进制位值相同则为0,否则为1
                                                       ~ 取反 ~是一元运算符,用来对一个二进制数按位取反,即将0变1,将1变0
                                                       << 左移 用来将一个数的各二进制位全部左移N位,右补0
                                                        >> 右移 将一个数的各二进制位右移N位,移到右端的低位被舍弃,对于无符号数,高位补0

                    2>   哎!这就是大概的用法。那我说这些东西普遍用在哪里,你们想想怎么来实现吧!!!!!
            这玩意的存在就是为了剩内存,你想想操作系统为了做的都是挺短小精干,能省地方就省地方呗,那么一个字节有八个位,你想想着8个位置要是当做开关的话,就能够代表8个开关,如果定义一个int类型也忒浪费了吧,这样的话,你只需要操控这些位运算符就可以实现对这些开关的控制,在运行API函数(就是为了更方便的使用函数,把这些函数封装在API中,里面可能包含多个函数。算是一个接口)的时候,你可以通过这个值来判断是否进行这个函数的操作啊,或者一些其他的操作。

                 3> 呦,不错哦(周董的台词)
            那么,左移运算符跟右移运算符尼,搞着玩意干啥子嘛。想想在内存中都是以二进制的形式存储的数据,一个字节有八个位置,每当左移一位不就是乘以2吗,比如十进制的数,你乘以10,就是在左移一位吧。看它的基数是多少,乘以多少就是代表左移。
            那右移就是除呗~~~~~~         (这种方式跟以前的编译器的乘除有关系的。)
            
             4>  那么咱们现在就来谈谈我们使用中常见的错误吧。
                    例如:   if(a&b==0)    即使a&b的值是0 它也不会运行跳进去的,a&b这只是一个操作,并不会真正的对ab进行改变。那么怎么解决呢

                 可以这样    int c=a&b;
                                       if(c==0){  }          这样不就间接的跳过这个坎去了吗??

                                             
                                                                                      本少侠以简洁的话,帮大家整理下思路。那么也请大家多多支持!!!

                                                                                                                                  ~~~~~~~~你们的支持是我最大的动力!!!!!!!!!!               
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-8-16 22:43:32 | 显示全部楼层
常来看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-8-17 12:34:43 | 显示全部楼层

细节决定成败,基础好之后才能更好的发展。估摸着大家都喜欢看一些特别高大上的游戏源码了,别逼我连续出几期坦克大战的实现步骤
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-8-17 16:49:23 | 显示全部楼层
1366627538 发表于 2016-8-17 12:34
细节决定成败,基础好之后才能更好的发展。估摸着大家都喜欢看一些特别高大上的游戏源码了,别逼我连续出 ...


没事  每日帖子挺好的   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-8-17 22:00:08 | 显示全部楼层
排版不行,建议Markdown转html后再贴到论坛上来。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-8-18 07:39:31 | 显示全部楼层
~风介~ 发表于 2016-8-17 22:00
排版不行,建议Markdown转html后再贴到论坛上来。

谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-27 08:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表