Convertir un int en un String et l'inverse

Résolu
ryoussef19 Messages postés 34 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 25 août 2007 - 13 juin 2007 à 10:21
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 14 juin 2007 à 01:20
Bonjour,
je travaille avec Visual Studio 2005 , comme langage visual c++

je peux convertir un int16, int32, ou un int 64 en un string ou l'inverse ..mais je sais pas comment je pourrais convertir un int (normal) en un string ?
est ce que quelqu'un peux m'aider?

merci

53 réponses

thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 12:00
De rien
En tout cas à son retour, il aura de la lecture! Il aura même une petite doc sur les int !
0
ryoussef19 Messages postés 34 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 25 août 2007 1
13 juin 2007 à 12:22
ok merci :-)

j'ai un petit souci je veux copier le contenu d'un fichier dans plusieurs fichiers à l'aide d'un filestream
donc j'ai fais une boucle
mais le pb c'est qu'il me lit toujours le fichier à partir du début:
FileStream ^fs1 =

gcnew FileStream(dirSource, FileMode::Open);

est ce que quelqu'un a une idée comment lire À chaque de lÀ où j'étais avant ?

merci d'avance

<!-- BEGIN TEMPLATE: bbcode_code -->
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 12:26
Tu ouvre ton fichier en lecture avant la boucle ;)
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
13 juin 2007 à 12:44
Avec VC++, 'int' et 'long' sont définitivement 4 octets quelle que soit la platforme cible.

ciao...
BruNews, MVP VC++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
13 juin 2007 à 12:46
Salut

<ol><li>...
</li><li>...
</li><li>...
</li><li>...
</li><li>On ne pose qu'une question par topic.</li><li>On pose une question aussi précise que possible.</li><li>On précise les détails du problème : contexte, langage, message d'erreur ...</li><li>On pense à donner le bout de code qui pose problème, et préciser le langage utilisé.</li></ol>

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
0
ryoussef19 Messages postés 34 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 25 août 2007 1
13 juin 2007 à 12:53
j'ai ouvert le fichier avant la boucle mais il me lis toujours depuis le début je comprends pas  pourquoi ?

voici mon code:
FileStream ^fs1 gcnew FileStream(dirSource, FileMode::Open);BinaryReader ^br1

gcnew BinaryReader(fs1);br1->ReadString();

for (n=0;n<j;n++){

i = c->IndexOf(kl);

String ^filename = c->Substring(0,i);

c = c->Substring(i+1);

i = c->IndexOf(kl);

String^fileleng = c->Substring(0,i);

c = c->Substring(i+1);

Int32 ^filelength=System::Convert::ToInt32(fileleng);
FileStream ^fws1 gcnew FileStream(filename, FileMode::CreateNew);BinaryWriter ^bw1

gcnew BinaryWriter(fws1);bw1->Write(br1->ReadBytes((

int)filelength));

fws1->Close();

bw1->Close();

}

fs1->Close();

br1->Close();

les i et les c  .. c juste pour recuperer les nom des fichiers et leur longueurs
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 13:33
Pour répondre a Brunews, il me semble très improbable que VC++ ne comporte pas de librairie 64 bits pour pouvoir compiler en 64 bits et coder un int sur 64 bits. A moins que microsoft ne se serve pas de ces propres logiciels pour fournirent dea system d'exploitation 64 bits tel que windows xp 64bits edition ou qu'ils n'utilisent que des int64 au lieu de déclarer des int ... En tout cas si tel est le cas, c'est du grand n'importe quoi et ce serait irrespectueux de tous les standard C et C++...
De plus je viens de vérifier par moi même, il existe des bibliothèques 64bitds pour VC++ cf http://support.microsoft.com/kb/875446/fr
Il serait absurde d'avoir des bibliothèques 64bits différentes des bibliotheques 32bits si les int étaient codés de la même façon...

Sinon pour essayer de voir d'où le problème vient fais des affichages de la position dans le fichier de lecture ( cf fseek) et puis du contenu qu'il lit a chaque fois, cela t'aidera a résoudre ton problème
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
13 juin 2007 à 13:40
Quand on veut un code Windows portable 32 <=> 64, on emploie des types WIN (INT_PTR etc...).

Le 'grand nimporte quoi' serait justement le contraire.
Quand je définis une structure par exemple, j'aligne les données comme il se doit (double sur 8, etc...), pas envie que le compilo me foute tout en l'air par décision unilatérale. Le patron doit rester celui qui pond le code, si pas apte il reste d'autres boulots.

ciao...
BruNews, MVP VC++
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 13:49
Quand on veux aligner corectement les données et avoir un code portable 32bits <=>64 bits et windows <=> linux on utilise des malloc (et des makefiles conditionnels dans le cas windows-linux) si on veux respecter les standard. A bon entendeur, salut !
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
13 juin 2007 à 13:57
ah l'éternel mythe (troll) du portable win <=> linux.
Dommage que ce n'était pas le sujet.

ciao...
BruNews, MVP VC++
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 14:17
Je ne vois pas en quoi j'ai trollé, j'ai juste parlé de portabilité...
Maintenant si ça dérange les gens qui sont sous windows de parler de la portabilité du code sous linux dans des forums de programmations je ne m'exprimerais plus la dessus...
J'étais plutôt agacé de l'inverse à savoir des gens qui n'utilisent que linux et ignoraient windows...
Le soucis ici c'était plus de l'architecture des ordinateur et le codage en machine des entiers sur différentes architectures...
Enfin quand je dis codage des entiers, c'est plutot une approche parsqu'on a parlé que de la taille en bits...
Désolé si j'ai trollé, je ne m'en étais pas aperçu!

Conseil aux autres: ne tentez pas d'approfondir un peu les sujets apparament on appelle ça un troll...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
13 juin 2007 à 14:24
oh faut pas se facher, fait beau et les oiseaux chantent.

ciao...
BruNews, MVP VC++
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 14:28
je ne suis pas faché mais juste déçu que quelqu'un dise que j'ai trollé comme certains le font sur le sujet windows/linux alors que je ne suis pas un fanatique ni de linux ni de windows...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
13 juin 2007 à 14:33
ok ok, j'ai mal apprécié ton message.
Je pensais qu'on allait déraper comme ça s'est fait pendant un moment.

ciao...
BruNews, MVP VC++
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 14:38
Désolé si mon message ne t'a pas plu, mon intention n'été vraiment pas de faire déraper la ocnversation.
Entre aide, respect et bonne humeur sont de rigueur sur ce site!
0
cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 3
13 juin 2007 à 21:34
Bonsoir,

En parlant de portabilité, itoa c'est portable sous linux ?

Matt...
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 22:05
Eh bien a mon grand étonnement j'ai trouvé sur le web que cela ne marchait pas sous linux... Etant sur de l'avoir déja utilisé, je l'ai tester chez moi sous linux et je peux l'utiliser... Pourtant je lis partout que ce n'est pas une fonction standard... A approfondir, je suis curieux, je vais fouiller un peu...
0
cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 3
13 juin 2007 à 22:07
c'est quoi ta distibution ?

Matt...
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 22:09
Une Ubuntu 7.04
0
thomwebster Messages postés 63 Date d'inscription mercredi 7 février 2007 Statut Membre Dernière intervention 14 juin 2007
13 juin 2007 à 22:12
Rooooooooh, j'ai trouvé pourquoi chez moi sa marche, on l'avait implémenté cette fonction en L1 Info.. Ce que j'ai tester incluait le .h du fichier .c ou on l'avait implémenter.... Je suis un boulet
Dons je note itoa est a proscrire lol
0
Rejoignez-nous