begin process at 2012 05 29 13:43:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

pointeur dans une fonction


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

pointeur dans une fonction

mercredi 19 novembre 2008 à 15:23:26 | pointeur dans une fonction

nemetos

Bonjour,
voici mon problème : ce code marche

using namespace std;
#include <iostream>
#include <stdio.h>

int lire(char *sMes,int iInf,int iSup);

int main()
{
 int i=lire("nombre ? ",0,10);
 cout << "i= " << i << endl;
    return 0;
}

int lire(char *sMes,int iInf,int iSup)
{
 char *cSaisie;
 int iNb;
 cout << sMes;
 do
 {
  cin >> cSaisie;
  iNb=atoi(cSaisie);
        if (iNb != 0 && cSaisie[0]!='0')
        {
            if (iNb >= iInf && iNb <= iSup) return iNb;
            else cout << " Valeur hors intervalle. Ressaisir la valeur : ";
        }
        else cout << "Votre saisie n'est pas numérique ";
 }
 while (1);
}

Par contre ceci compile mais plante lorsque je saisis une valeur et je voudrais savoir pourquoi:

using namespace std;
#include <iostream>
#include <stdio.h>

int lire(char *sMes,int iInf,int iSup);
void test();

int main()
{
        test();
        return 0;
}

int lire(char *sMes,int iInf,int iSup)
{
 char *cSaisie;
 int iNb;
 cout << sMes;
 do
 {
  cin >> cSaisie;
  iNb=atoi(cSaisie);
        if (iNb != 0 && cSaisie[0]!='0')
        {
            if (iNb >= iInf && iNb <= iSup) return iNb;
            else cout << " Valeur saisie incorrect. Ressaisir la valeur : ";
        }
        else cout << "Votre saisie n'est pas numérique!! RESSAISISSEZ SVP!! ";
 }
 while (1);
}

void test()
{
    int i=lire("nombre ? ",0,10);
    cout << "i= " << i << endl;
}

Je sais qu'au lieu de mettre char *cSaisie je pourrais mettre char cSaisie[10] mais je voulais tester avec un pointeur.
Merci.

Pizza Dude

mercredi 19 novembre 2008 à 16:02:54 | Re : pointeur dans une fonction

laurent1024

Membre Club
Réponse acceptée !
char *cSaisie;
 int iNb;
 cout << sMes;
 do
 {
  cin >> cSaisie;

===> il n'y a pas d'espace mémoire alloué pour cSaisie;
mercredi 19 novembre 2008 à 16:28:56 | Re : pointeur dans une fonction

nemetos

Merci j'ai rajouté cSaisie=(char *) malloc(sizeof(1)); et ça marche nickel

Pizza Dude


Cette discussion est classée dans : int, char, cout, inb, csaisie


Répondre à ce message

Sujets en rapport avec ce message

Dans le genre prenant........ [ par Xs ] oui !c 'est trés chiant !j'explique mon pb : j'ai un code source, fais par moi-meme, et dedans, je veux que l'on saisisse des renseignement comme le l addition en binaire [ par jejedi ] bonsoir , je dois faire un petit prog qui additione 2 nombres binaire. Le probleme c' est que mes 2 nombres étant des chaines de caractére ca me renv resoudre un problème [ par ihssann ] j'ais un projet à fiare ; j'ais fais le code meis il ne veux pas executer!!!!qu'est ce que je dois faire svp??voila mon code: #include <SPAN lang=EN-G char **argv [ par iam_myst ] bonjour je pense que c'est vraiment un problème de débutant mais la je suis perplexe :( si on a un programme pricipal de ce type :     int main(int a Pb de link avec cout et un char [ par Zakata ] Bonsoir à tous,J'ésaye de programmer une fonction qui affiche une variables de type char sur la console :void Menu::Display(void){    int Cpt;    for( simplifier prog. [ par F0ra ] Bonjour,Je cherche de l'aide pour simplifier mon programme au maximumVoici, le contenu du fichier txt :0 1 2 5 3 4 . 1 2 51 1 5 2 2 6 . 9 2 3 2 5 9 8 arret de lecture [ par peweete ] kikooj'ai un petit soucis d'arret de lecture d'un fichier.J'ai enregistré mes données dans un fichier texte et souhaiterai les mettre dans un tableau fork et execvp [ par fullpirates ] Bon je vous explique j'ai un travail de mi-session à remettre pour mercredi et j'ai essayer bien comme mal a faire fonctionner la commande execvp ... Sauvegarder [ par buguetj ] #include #include #include #include #include using namespace std;const int MAXNAMESIZE=3; int main(int nNumerofArgs, char* pszAr


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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 : 4,259 sec (3)

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