[C] cast int => char[]
Résolu/Fermé
A voir également:
- Int to char c
- Qwerty to azerty - Guide
- Press del to enter setup ✓ - Forum Windows
- Video to video - Télécharger - Conversion & Codecs
- Acsm to pdf ✓ - Forum PDF
- Majuscule to minuscule - Guide
6 réponses
Oulà, j'ai oublié de préciser mais je suis un total débutant en programmation alors là je commence à avoir de la peine à suivre.
En fait pour le modulo, si j'ai bien compris ça va pas marcher parce que je sais pas du tout la valeur de x, y et z vu qu'elles changent tout le temps.
Pour ton site et le string.h j'ai trouvé des fonctions pour passer d'une string à un nombre mais pas pour le contraire.
Alors je vais aller m'instruire sur les masque binaires et voir si je peux en tirer quelque chose.
Merci beaucoup pour ton aide.
A+
Dren
En fait pour le modulo, si j'ai bien compris ça va pas marcher parce que je sais pas du tout la valeur de x, y et z vu qu'elles changent tout le temps.
Pour ton site et le string.h j'ai trouvé des fonctions pour passer d'une string à un nombre mais pas pour le contraire.
Alors je vais aller m'instruire sur les masque binaires et voir si je peux en tirer quelque chose.
Merci beaucoup pour ton aide.
A+
Dren
Ravachol
Messages postés
566
Date d'inscription
vendredi 5 mars 2004
Statut
Membre
Dernière intervention
30 octobre 2005
120
3 janv. 2005 à 20:45
3 janv. 2005 à 20:45
Salut,
Tu as les fonctions sprintf et snprintf que tu peux utiliser comme ceci:
A++
C'est pas parce qu'ils sont nombreux à avoir tort
qu'ils ont raison! (COLUCHE)
Tu as les fonctions sprintf et snprintf que tu peux utiliser comme ceci:
int main(void) { unsigned short int x = 14567; unsigned short int y = 45678; unsigned int z = x * y; char chaine[20]; sprintf(chaine, "%d", z); printf("%s\n", chaine); }
A++
C'est pas parce qu'ils sont nombreux à avoir tort
qu'ils ont raison! (COLUCHE)
grdscarabee
Messages postés
134
Date d'inscription
mercredi 24 juillet 2002
Statut
Membre
Dernière intervention
7 août 2005
74
3 janv. 2005 à 19:34
3 janv. 2005 à 19:34
Salut,
Je ne sais pas si j'ai très bien compris ce que tu veux, mais si tu veux par exemple afficher le nombre à l'écran, tu dois utiliser printf("%d",456) (%d spécifie qu'il attend un nombre décimal)...par contre si tu veux juste transformer le nombre en char*, je ne sais pas trop.
J'utiliserai bien les stream, mais j'ai peur que ce ne soit disponible qu'en C++....Sinon tu fais de la conversion en ASCII
GrdScarabe
Learn with the best, teach the others
Je ne sais pas si j'ai très bien compris ce que tu veux, mais si tu veux par exemple afficher le nombre à l'écran, tu dois utiliser printf("%d",456) (%d spécifie qu'il attend un nombre décimal)...par contre si tu veux juste transformer le nombre en char*, je ne sais pas trop.
J'utiliserai bien les stream, mais j'ai peur que ce ne soit disponible qu'en C++....Sinon tu fais de la conversion en ASCII
GrdScarabe
Learn with the best, teach the others
Bon alors j'explique un peu mieux.
Disons que je veux faire une multiplication et ensuite comparer les trois dernier chiffre du nombre obtenu avec une autre varriable.
Donc j'ai quelque chose comme ça :
unsigned short int x = 14567;
unsigned short int y = 45678;
unsigned int z = x * y;
et maintenant je veux transformer z en chaine de charactère pour pouvoir le manipuler.
Y'a-t-il une fonction pour ça ?
Merci d'avance et j'avais oublié alors BONNE ANNEE !!!
Disons que je veux faire une multiplication et ensuite comparer les trois dernier chiffre du nombre obtenu avec une autre varriable.
Donc j'ai quelque chose comme ça :
unsigned short int x = 14567;
unsigned short int y = 45678;
unsigned int z = x * y;
et maintenant je veux transformer z en chaine de charactère pour pouvoir le manipuler.
Y'a-t-il une fonction pour ça ?
Merci d'avance et j'avais oublié alors BONNE ANNEE !!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ouiii, c'est exactement ce que je cherchais !!!
Merci Ravachol, c'est vraiment simpa.
Merci également pour ton aide grdscarabee.
Je viens de trouvé un truc mais c'est beaucoup plus long et c'est en C++ mais je le met quand même si ça peut aider qqun.
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
unsigned short int x = 14567;
unsigned short int y = 45678;
unsigned int z = x * y;
ostringstream chaine1;
string chaine2;
chaine1 << z;
chaine2 = chaine1.str();
cout << chaine2 << endl;
Bon, j'espère que j'ai pas fait trop de fautes.
A+ et bonne année !!!
Dren
Merci Ravachol, c'est vraiment simpa.
Merci également pour ton aide grdscarabee.
Je viens de trouvé un truc mais c'est beaucoup plus long et c'est en C++ mais je le met quand même si ça peut aider qqun.
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
unsigned short int x = 14567;
unsigned short int y = 45678;
unsigned int z = x * y;
ostringstream chaine1;
string chaine2;
chaine1 << z;
chaine2 = chaine1.str();
cout << chaine2 << endl;
Bon, j'espère que j'ai pas fait trop de fautes.
A+ et bonne année !!!
Dren
grdscarabee
Messages postés
134
Date d'inscription
mercredi 24 juillet 2002
Statut
Membre
Dernière intervention
7 août 2005
74
3 janv. 2005 à 19:57
3 janv. 2005 à 19:57
Re,
Alors je ne comprends pas trop ce que tu veux faire de ta chaine de caractere....tu ferais mieux d'utiliser le modulo si tu veux juste faire joujou avec les trois derniers chiffres (operateur %) ou alors si tu veux quelque chose de plus fin amuses toi à faire un masque binaire....la conversion en string va te poser plus de problèmes que tu ne le penses, rien qu'au niveau de la sécurité !
Mais si tu veux réellement convertir ton nombre en chaine, recherches dans le fichier string.h les fonctions disponibles, ou regardes sur www.cppreference.com
GrdScarabe
Learn with the best, teach the others
Alors je ne comprends pas trop ce que tu veux faire de ta chaine de caractere....tu ferais mieux d'utiliser le modulo si tu veux juste faire joujou avec les trois derniers chiffres (operateur %) ou alors si tu veux quelque chose de plus fin amuses toi à faire un masque binaire....la conversion en string va te poser plus de problèmes que tu ne le penses, rien qu'au niveau de la sécurité !
Mais si tu veux réellement convertir ton nombre en chaine, recherches dans le fichier string.h les fonctions disponibles, ou regardes sur www.cppreference.com
GrdScarabe
Learn with the best, teach the others