begin process at 2012 05 28 10:53:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

Caster un int dans un char (char * ?)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Caster un int dans un char (char * ?)

lundi 18 octobre 2010 à 20:03:01 | Caster un int dans un char (char * ?)

snoop44

Bonjour a tous !

Voila mon petit soucis : Je souhaite "caster" un int pour l'écrire dans un char* avant de faire appel a une fonction qui requiert un argument de type char (La fonction écrit dans un fichier).

Voici mon code :

Code C/C++ :
int main(void)
{
    short int resultat;
    short int *presultat;
    char *value_to_add="nouvel essai\n", *value2="essai";
    int i;
    resultat=10;
    presultat = &resultat;
    fadd(nom_fichier,value_to_add,presultat);
    for (i=1; i<6; i++)
    {
        //sprintf(*value_to_add,"%d",1);
        //*value_to_add=(char)i;
        fadd(nom_fichier,value_to_add,presultat);
        fadd(nom_fichier,value2,presultat);
    printf("%d",i);
    }
    printf("Resulat de la fonction : %d",resultat);
}


plus precisement le probleme est ici :

Code C/C++ :
for (i=1; i<6; i++)
    {
        //sprintf(*value_to_add,"%d",1);
        //*value_to_add=(char)i;
        fadd(nom_fichier,value_to_add,presultat);
        fadd(nom_fichier,value2,presultat);
    printf("%d",i);
    }


J'ai essayé pas mal de chose sprintf,plusierus formes d'égalités, le cast. Rien a faire j'ai toujours un segmentation fault. Quelqun a t'il une idée ?

Merci encore
lundi 18 octobre 2010 à 21:13:38 | Re : Caster un int dans un char (char * ?)

DeAtHCrAsH


Salut,

Pour convertir un int en char * essaye plutot d'utiliser itoa(...).

Shell
lundi 18 octobre 2010 à 21:24:52 | Re : Caster un int dans un char (char * ?)

bayeto

Membre Club
itoa n'est pas standard contrairement à sprintf ou snprintf.

Par contre le pointeur passé à sprintf DOIT être initialisé via un malloc ou un tableau. Le * n'a pas de sens dans ton code commenté.

lundi 18 octobre 2010 à 21:30:05 | Re : Caster un int dans un char (char * ?)

BruNews

Administrateur CodeS-SourceS
Au moins il saura qu'existe itoa(), restera ensuite à choisir entre l'efficace et le standard.

ciao...
BruNews, MVP VC++
lundi 18 octobre 2010 à 21:35:41 | Re : Caster un int dans un char (char * ?)

snoop44

Merci pour les reponses.
Fervant utilisateur de linux, je ne dispose pas de la fonction itoa. Je vais essayer avec malloc.

En revanche pour la declaration par tableau, est ce que *valeur="texte"; ne declare t'il pas d'office un tableau de char ?
lundi 18 octobre 2010 à 21:43:00 | Re : Caster un int dans un char (char * ?)

bayeto

Membre Club
Pas du tout en fait ça initialise ton pointeur vers une chaine constante. Faudrait plutôt faire const char *valeur="texte";

Si t'es sur linux, essaye de compiler avec -Wall ton compilateur t'aidera un peu.

mardi 19 octobre 2010 à 10:11:09 | Re : Caster un int dans un char (char * ?)

CptPingu

Administrateur CodeS-SourceS

itoa n'est pas standard contrairement à sprintf ou snprintf


Ça fait plaisir des gens soucieux du standard et de la portabilité !

Si tu sais que ton chiffre ne sera jamais très grand, tu peux aussi utiliser un buffer de taille statique, plutôt qu'un malloc.

Attention, non testé:
Code C/C++ :
int main(void)
{
    short int resultat;
    char value_to_add[256];
    int i;

    resultat = 10;
    fadd(nom_fichier, value_to_add, &resultat);
    for (i = 1; i < 6; ++i)
    {
        sprintf(value_to_add, "%d", i);
        fadd(nom_fichier, value_to_add, &resultat);
        /*fadd(nom_fichier, value2, &resultat);*/
        printf("%d",i);
    }
    printf("Resulat de la fonction : %d", resultat);
}


________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question


Cette discussion est classée dans : int, add, to, char, value


Répondre à ce message

Sujets en rapport avec ce message

int to char ! [ par nullspace ] Voila mon problème !J'ai une résultat sous forme de variable INT, et je veux que ce résultat soit affecté à une variable de type CHAR.Genre, si j'ai 6 INT TO CHAR [ par nicolas66 ] Salut tlm c encore moi ..cette fois-ci j'aimerai convertir un int en char mais je n'y arrive pas :(. J'ai essayé de faire comme sur une source sur le String to Char puis Char to Int puis Int to Char puis Char to Int [ par gooooo ] Bonjour, Je débute avec Visual C++ et j'avoue que j'ai un peu de mal. Habituellement j'utilise Qt et la il y a du changement. Voici le problème : J gestion d'un cinéma [ par rouday55 ] Bonsoir bonsoir ! Je suis novice en langage c, je m'y suis mis depuis début novembre et j'ai quelques lacunes dans la résolution de mon problème. En f trier un tableau de stucture en c [ par peli20 ] [^^happy13]salut, j ai un petit probleme en c ,j espere que vous m aidiez.. bon, j essaie d elaborer un programme faisant la gestion des contact, le r aide pour realiser une repertoire telephonique en langage c [ par djamel000 ] Bonjour , je souhaiterai réaliser un répertoire téléphonique à accès sécurisé(cryptage des données par mot de passe)et recherche rapide de coordonnées cnvertir un int en char [ par fatenbenhamadi ] bonjour, comment convertir un int en char? NB:je developpe sous CVI merci Error LNK2019 [ par issam000000 ] bonjour ,je suis débutant en programmation , je  arrive pas a résoudre cette erreur , quand je compile tout ce passe bien , 0 erreur 0 avertissement , SDL et windows.h sous sygwin [ par agent933 ] salut je travaille en ce moment sur un programme en langage.grosso modo jutilise le port serie pour recevoir donnees et ensuite utilise une interface CString to char* [ par dorras7 ] Salut, Voici mon code CFileDialog FileOpenDialog(...............) ..... CString strfile = FileOpenDialog.GetPathName(); //pour obtenir le nom //du fi


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,889 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales