`
mayi_hetu
  • 浏览: 15592 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

巧妙的位操作

 
阅读更多

看larbin源代码,看到一个很巧妙的字符串忽略大小写比较实现

A:65(0100 0001),a:97(0110 0001)

 

A | 32 == a

a & 0xDF == A

 

bool startWithIgnoreCase (char *amin, char *b) {

  int i=0;

  while (amin[i] != 0) {

    if (amin[i] != (b[i]|32)) return false;

    i++;

  }

  return true;

}

分享到:
评论

相关推荐

    单片机的C语言中位操作用法

    在单片机编程中,C语言的位操作是不可或缺的一部分,尤其在C51这种针对8051系列单片机的编译器中,位操作能力尤为突出。C51不仅提供了高级语言的抽象和易用性,还具备了低级语言与硬件交互的能力,这使得C语言成为...

    700行的代码俄罗斯方块,位操作

    《700行的代码俄罗斯方块:位操作解析》 在编程领域,尤其是在低级语言如C语言中,位操作是一种高效的编程技术,能够直接对二进制数据进行操作。这里我们将深入探讨一个仅有700行代码的C语言实现的俄罗斯方块程序,...

    CSAPP的datalab-位运算

    3. 位操作技巧:在位操作中,通过特定的位运算组合可以实现一些巧妙的功能,如快速判断一个数是否是2的幂次方。 三、实验步骤与解析 LAB2实验中,可能会涉及到以下内容: 1. 位操作实践:通过编写程序,实践使用...

    js代码-通过位操作实现一个权限类

    总的来说,通过位操作实现权限类是一种巧妙且高效的方法,尤其适用于需要频繁进行权限组合和检查的场景。在JavaScript中,虽然这种方式较为少见,但对于理解底层机制和提升代码性能而言,不失为一种有价值的技巧。

    C语言在远程故障诊断系统中的巧妙运用.pdf

    总结而言,C语言在远程故障诊断系统中的巧妙运用主要体现在其位操作能力,能够有效地处理与硬件设备交互所需的各种精确控制任务。随着工业自动化和智能制造的不断深入发展,C语言将继续在这些领域中扮演重要角色,为...

    三菱FX系列PLC 16位数据转32位数据变通方法

    总之,尽管三菱FX系列PLC可能没有直接的16位到32位数据转换指令,但通过巧妙的位操作和逻辑运算,我们可以构造出相应的解决方案。这个过程需要对PLC的位逻辑有深入的理解,并能够灵活运用各种指令。对于那些处理大量...

    通过SQL Server的位运算功能巧妙解决多选查询方法

    通过这种方式,我们可以使用SQL Server的位运算功能巧妙地解决多选查询问题,避免了复杂的字符串拼接和解析,提高了查询效率。这种方法不仅适用于SQL Server,还可以在其他支持位运算的数据库系统中应用,如MySQL、...

    易语言源码巧妙IP排序.rar

    具体到"巧妙IP排序"的源码,可能使用了一些优化技巧,比如利用位操作加快转换过程,或者采用了更高效的排序算法,如快速排序、归并排序等。这些技巧可以减少排序的时间复杂度,提高程序性能。同时,易语言提供了丰富...

    6-杜瑜皓-位运算技巧与应用1

    这个函数在进行位操作时非常有用,例如统计数组中元素的1的总数,或者在哈希函数中计算某个值的位模式。 2. **Word Operation与Word-RAM模型**: Word Operation是指对计算机内存中的单词(通常为32位或64位)进行...

    x86进制运算,巧妙

    例如,如果你想将一个十进制数转换为二进制,你可以使用位操作指令来逐步提取每一位。 "jisuan.asm" 文件很可能是实现这个进制转换功能的源代码。在汇编程序中,程序员会定义数据段(DATA SEGMENT)、代码段(CODE ...

    单字节无符24位除法

    这种运算需要巧妙的位操作和循环机制来完成,因为单片机的ALU(算术逻辑单元)通常只能处理8位的算术运算。 实现24位除法的基本步骤如下: 1. **预处理**:将24位被除数拆分为高位8位、中间8位和低位8位,分别存储...

    易语言巧妙IP排序

    本知识点将深入探讨“易语言巧妙IP排序”这一主题,包括IP地址的处理、排序算法以及相关函数的运用。 IP地址是我们网络通信中不可或缺的部分,它由4个0-255的数字组成,之间用点号分隔,如192.168.0.1。在编程中,...

    Hacker's Delight(英文)

    1. **位操作**:书中详细讲解了各种位操作,如位移(bit shift)、按位与(bitwise AND)、按位或(bitwise OR)、按位异或(bitwise XOR)等,这些都是低级别编程和优化中常见的操作。通过这些操作,程序员可以直接...

    PHP巧妙利用位运算实现网站权限管理的方法

    PHP作为广泛使用的服务器端脚本语言,提供了一种巧妙的方法,即利用位运算来实现这一目标。通过位运算,我们可以高效地组合和检查不同权限,而不需要创建复杂的逻辑结构。 首先,我们需要定义一系列代表不同权限的...

    正则表达式在C语言中的巧妙应用

    2. **接近硬件**:C语言提供了对内存地址和位操作的直接控制,使其非常适合硬件级编程。 3. **可移植性**:C语言编写的程序可以在不同的操作系统和硬件平台上编译和运行,具有很好的可移植性。 4. **丰富的库支持**...

    仅用3字节存储24个布尔值的示例 

    如果直接用这种标准方式存储24个布尔值,将需要24个字节,但通过巧妙的位操作,我们可以大大减少所需的空间。 首先,让我们理解一下位操作。位操作是在二进制级别对数据进行操作,包括位与(&)、位或(|)、位异或...

    易语言源码易语言左移右移源码.rar

    5. **学习技巧**:学习作者如何巧妙地运用位操作来解决问题,提升自己的编程技巧。 通过研究"易语言左移右移源码",你可以深入了解位操作的概念,提高编程能力,并可能发现一些易语言特有的编程技巧和最佳实践。...

    C语言高效编程的几招

    位操作是C语言中强大的工具,能够高效处理数据,特别是用于替代较慢的操作,如除法和取模。位操作直接在二进制级别上进行,速度远超其他算术运算。例如,通过位移和位与操作,可以快速实现整数除以2的整数部分,这在...

    算法-权势二进制(51Nod-1413).rar

    2. 按位操作:使用位操作如按位与(&)、按位异或(^)和右移运算符(>>),可以更高效地计算1的个数。 3. 巧妙的数学技巧:有时,可以通过观察二进制数的特性来简化计算,例如,对于任何正整数n,n&(n-1)总是去掉n的最右边...

Global site tag (gtag.js) - Google Analytics