Bonjour.
J'ai un type d�finit comme suit: (c'est un mot de 64 bits, ou 2 mots de 32 bits)
�a je ne peux pas y toucher!
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 typedef union { //1 mot de 64 bits unsigned __int64 motEntier; //2 mots de 32 bits struct { unsigned int part1; unsigned int part2; }mot32; } Mot64;
Maintenant, j'essaie de mettre un de ces mots dans un string, mais �a ne marche pas des fa�ons que j'ai essay�:
Si quelqu'un a une id�e je suis preneur, parce que la je s�che.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
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 //init de mon mot: Mot64 monMot; monMot.motEntier=982280960055126; //un petit oss pour la conversion, et un string: ostringstream oss; string monString; //mes essais: oss << monMot.motEntier; //compilation error: operator '<<' is ambiguous oss << (unsigned __int64) monMot.motEntier; //compilation error: operator '<<' is ambiguous oss << (double) monMot.motEntier; //compilation error: conversion from unsigned __int64 to double not implemented, use signed __int64 oss << (signed __int64) monMot.motEntier; //compilation error: operator '<<' is ambiguous oss << (int) monMot.mot32.part1 << (int) monMot.mot32.part2 //ca compile et execute, mais evidemment ne me donne pas le bon resultat
Je suis bien all� voir la faq, comment convertir n'importe quel type d'objet en string, mais je ne comprend pas bien les classes templates.
Partager