jlHe233 2022-03-07 03:18 采纳率: 88.6%
浏览 24
已结题

为什么array element不同还是会通过if语句?


bool IsFlush(string card[])
{
    int cnt=1;
    for (int i=0;i<5;i++)
    {
        for (int j=0;j<5;j++)
        {
            if (i!=j)
            {
                if (card[i][1]==card[j][1])
                {
                    cnt++;
                    cout<<i<<j<<endl;
                }
    
            }
        }
        if (cnt==5) return true;
        else cnt=1;
        
    }
    return false;
}

输出是这样(上面是array,下面是输出,一旦五个符号相同就return true)

img

  • 写回答

2条回答 默认 最新

  • _GX_ 2022-03-07 04:47
    关注

    下面是扑克几个符号的Unicode,你把它们保存到std::string里是按UTF-8编码保存的,每个符号占三个字节。

    SymbolUnicodeUTF-8
    U+26600xE2 0x99 0xA0
    U+26630xE2 0x99 0xA3
    U+26650xE2 0x99 0xA5
    U+26660xE2 0x99 0xA6

    if (card[i][1]==card[j][1])比较的是字节0xE2

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月15日
  • 已采纳回答 3月7日
  • 创建了问题 3月7日

悬赏问题

  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏
  • ¥15 gg加速器加速游戏时,提示不是x86架构
  • ¥15 python按要求编写程序
  • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入
  • ¥20 XP系统在重新启动后进不去桌面,一直黑屏。
  • ¥15 opencv图像处理,需要四个处理结果图
  • ¥15 无线移动边缘计算系统中的系统模型
  • ¥15 深度学习中的画图问题
  • ¥15 java报错:使用mybatis plus查询一个只返回一条数据的sql,却报错返回了1000多条