美文网首页技术日常
c++9~字符和数字异或运算时和php的区别

c++9~字符和数字异或运算时和php的区别

作者: 摹喵居士 | 来源:发表于2018-10-26 13:36 被阅读48次

2018.10.28

c++和php在字符和数字进行异或时不同

php中字符和数字按位异或,相当于c++里,对字符进行atoi,识别数字,非数字就是0,并不是用ascii的数值去运算

php

<?php
function test($str) {
   $num = 0;
   for ($i = 0; $i < strlen($str); $i++) {
      var_dump($str[$i] ^ $num);
   }
}

test("23B3");


结果:2303

c++

std::string test = "23B3";
    char *p1 = new char[1];
    for (int i = 0; i < test.length(); i++) {
        
        p1[0] = test[i];
        printf("%s:%d\n", "test", atoi(p1) ^ 0);
    }
    delete []p1;

结果:2303

相关文章

  • c++9~字符和数字异或运算时和php的区别

    2018.10.28 c++和php在字符和数字进行异或时不同 php中字符和数字按位异或,相当于c++里,对字符...

  • 1.5 PHP运算符

    1. PHP+号运算,字符串转换规则 ① 如果字符串以数字开头且和字母(或符号)搭配,那么会舍弃字母(或符号)部分...

  • PHP代码安全--类型对比

    字符串与数字对比 原理: php的对比运算时,是会将两个变量都转换为相同类型,不同变量的无法对比当字符串和int类...

  • 位运算

    常用的位运算符号包括 1.逻辑运算符 异或的特点 任何数字与自己异或结果是0;/ 两个相同数字异或的结果是0。 任...

  • leetcode136.只出现一次的数字,137.只出现一次的数

    leetcode136.只出现一次的数字 题目链接 题目描述: 思路:异或运算 对于异或运算有以下特性: a ^ ...

  • php 与、或、异或运算

    1.与运算(&) 参加运算的两个数据,按二进制位进行“与”运算。 运算规则: 即:两位同时为“1”,结果才为“1”...

  • 位运算 - 二进制中1的个数

    位运算是把数字用二进制表示之后,对每一位上0或者1的运算。 位运算总共只有5种运算:与、或、异或、左移和右移。 与...

  • 45.LeetCode461. 汉明距离

    标签: 位运算 难度: 简单 题目描述 我的解法 将 x 和 y 按位异或 得到数字 c,调用 bin() ...

  • PHP7新特性

    PHP标量类型和返回值类型声明 PHP NULL合并运算符 PHP太空船运算符小于、等于或大于 $b时,它分别返回...

  • 位运算--异或(^)

    异或(^)运算 --同为假,异为真 异或结果: (二进制数字) 11 ^ 11 ->00 10 ^ 01 ->1...

网友评论

    本文标题:c++9~字符和数字异或运算时和php的区别

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