zoukankan      html  css  js  c++  java
  • C#中的位的或运算的理解

    如果懂位的运算,看到下面这2个程序执行的结果,会很容易理解,如果像我这样的菜鸟,刚接触开始肯定也觉得晕晕的,|= 这是什么运算符?

      |=就是位的或运算符,下面还是用上面的程序来讲解一下,为什么上面2个程序结果输出的是a,而不是A或者B

     

    1. 算出字符在ASCII表中的十进制值

    char c = 'A';//  在ASCII表中,字符A的二进制的值是 0100 0001 (十进制是65) 

    c |= ' ';//  在ASCII表中,一个空一格的字符' '的二进制的值是 0010 0000(十进制是32)

    怎么算出它的值?查看一下ASCII表就知道,如下图所示

     如果懒得查ASCII表,也可以通过运行C#程序可以知道,在程序中设置个断点

    这样就得出字符A所对应的十进制的值35,然后我们可以自己手动算出它的二进制的值 0100 0001

    2. 有了二进制的值,就开始进行位的或运算吧

    A:       00000000 00000000 00000000  01000001  (十进制65)

    空格:  00000000 00000000 00000000  00100000  (十进制32)

    位或运算,就是只要有一个1就是1,两个都是0才是0

    结果: 00000000 00000000 00000000  01100001 (十进制97)

    现在回头看看这个结果是不是在ASCII表中就是 a.

    3 知道了这个位的或运算和ASCII表中字母所表示的值,我们可以运用在判断某个字符是否为大写或小写字母了

     

  • 相关阅读:
    APP兼容性测试
    APP本地服务安全测试
    接口安全测试
    Python之日志操作(logging)
    Python之json编码
    Python之配置文件读写
    windows10 修改远程连接本地端口
    ctf学习
    telnet常见的错误
    连接ssh中常见的错误代码
  • 原文地址:https://www.cnblogs.com/qq605490312/p/6047612.html
Copyright © 2011-2022 走看看