[Microsoft Specific] Conversion __int64 -> String
hello à tous ....
j'utilise une conversion fournit ici ( http://www.codeproject.com/cpp/Preci...eciseTimer.zip test.cpp)
Mais j'obtiens une erreur d'execution au moment ou j'aimerais passer cette string dans un printf, sprintf ou autre fonction de sortie.
PS : pas de problème avec cout !
Si qqun est un chef des conversions et qu il a du temps....
merci d'avance...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| string Int64ToString(__int64 const& ri64, int iRadix=10)
{
bool bNeg = (ri64 < 0);
__int64 i64 = ri64;
string ostrRes;
bool bSpecial = false;
if(true == bNeg)
{
i64 = -i64;
if(i64 < 0)
//Special case number -9223372036854775808 or 0x8000000000000000
bSpecial = true;
ostrRes.append(1, '-');
}
int iR;
do
{
iR = i64 % iRadix;
if(true == bSpecial)
iR = -iR;
if(iR < 10)
ostrRes.append(1, '0' + iR);
else
ostrRes.append(1, 'A' + iR - 10);
i64 /= iRadix;
}
while(i64 != 0);
//Reverse the string
string::iterator it = ostrRes.begin();
if(bNeg)
it++;
reverse(it, ostrRes.end());
return ostrRes;
} |
Re: [Microsoft Specific] Conversion __int64 -> String
Citation:
Envoyé par ZaaN
Mais j'obtiens une erreur d'execution au moment ou j'aimerais passer cette string dans un printf, sprintf ou autre fonction de sortie.
Alors montre nous plutôt le code correspondant à ça :wink: