美文网首页
巧用多字符Char

巧用多字符Char

作者: 小黄人写代码 | 来源:发表于2015-07-04 21:24 被阅读35次

    我们很熟悉char这个数据类型和它的使用方式:

    char c = 'a';
    

    这个c变量在ASCII编码下是97

    还有一种不常见的字符char的写法:

    int i = `AaBb';
    

    这个i变量的值按每个charASCII值转十六进制拼在一起,也就是说:

    `AaBb`
    -> '0x41'+'0x61'+'0x42'+'0x62'
    -> '0x41614262' // 十进制1096893026
    

    PS:这个组合方式和“大小端”有关系,上面是i386下的结果,多字符的长度限度为最多4个char知道了这个特效,我们就可以做些坏事,比如:

    self.someButton.tag = 'SHIT';
    ...
    if (button.tag == 'SHIT') {
        NSLog(@"I've got this shit button");
    }
    

    当然使用tag是很不推荐的写法,尽量不用。使用这个特性来避免些魔法数字或标记些整型数字还是极好的。

    相关文章

      网友评论

          本文标题:巧用多字符Char

          本文链接:https://www.haomeiwen.com/subject/gmsyqttx.html