QString("0x%1").arg ambiguous ?
-
@SPlatten said in QString("0x%1").arg ambiguous ?:
strData += QString("0x%1").arg((char)arybytData[i], 0, 16);
What is ambiguous about this ?
to solve the ambiguity, you have to double cast:
strData += QString("0x%1").arg(int(char(arybytData[i])), 0, 16);
@KroMignon said in QString("0x%1").arg ambiguous ?:
strData += QString("0x%1").arg(int(char(arybytData[i])), 0, 16);
😱
I think I'm getting a little bit sick....QStringLiteral("0x%1").arg(QString::number(arybytData[0], 16));
-
I have:
strData += QString("0x%1").arg((char)arybytData[i], 0, 16);
What is ambiguous about this ?
I'm getting:call of overloaded 'arg(char, int, int)' is ambiguous, I thought I had solved the ambiguity by specifing the types?
-
I have:
strData += QString("0x%1").arg((char)arybytData[i], 0, 16);
What is ambiguous about this ?
I'm getting:call of overloaded 'arg(char, int, int)' is ambiguous, I thought I had solved the ambiguity by specifing the types?
@SPlatten said in QString("0x%1").arg ambiguous ?:
strData += QString("0x%1").arg((char)arybytData[i], 0, 16);
What is ambiguous about this ?
to solve the ambiguity, you have to double cast:
strData += QString("0x%1").arg(int(char(arybytData[i])), 0, 16);
-
@SPlatten said in QString("0x%1").arg ambiguous ?:
strData += QString("0x%1").arg((char)arybytData[i], 0, 16);
What is ambiguous about this ?
to solve the ambiguity, you have to double cast:
strData += QString("0x%1").arg(int(char(arybytData[i])), 0, 16);
@KroMignon said in QString("0x%1").arg ambiguous ?:
strData += QString("0x%1").arg(int(char(arybytData[i])), 0, 16);
😱
I think I'm getting a little bit sick....QStringLiteral("0x%1").arg(QString::number(arybytData[0], 16));
-
@SPlatten said in QString("0x%1").arg ambiguous ?:
strData += QString("0x%1").arg((char)arybytData[i], 0, 16);
What is ambiguous about this ?
to solve the ambiguity, you have to double cast:
strData += QString("0x%1").arg(int(char(arybytData[i])), 0, 16);
@KroMignon said in [QString("0x%1").arg ambiguous ?]
to solve the ambiguity, you have to double cast:
strData += QString("0x%1").arg(int(char(arybytData[i])), 0, 16);
I agree, but I would convert to uchar instead:
char c=128; // signed char ! QString s1=QString("%1").arg(int(c),0,16); // ffffffffffffff80" QString s2=QString("%1").arg(int(uchar(c)),0,16); // 80 or simply QString s1=QString("%1").arg(uint8_t(c),0,16);