begin process at 2012 05 29 20:12:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

System

 > 

Probleme avec malloc


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

Probleme avec malloc

jeudi 1 mars 2007 à 21:13:59 | Probleme avec malloc

lektrosonic

Bonjour, je code un logiciel sous Dev-Cpp en C et depuis hier mon application se bloque a un moment donne. Je n arrivai pas a trouver le bug. (La compilation fonctionne, aucune erreur ni warning). Du coup j'ai installe Visual Studio 2005 et lorsque mon programme se lance et au moment ou il se bloque cette fenetre aparait:   (desole pour le lien, mais j'ai pas reussi a introduire l image ici)
http://lektrosonic.free.fr/logo/Untitled-1.jpg
Grace a cette fenetre, j'ai pu ''localiser'' le bug. J'ai alors realise que cette fenetre apparait lors de l'apel de la fonction malloc. Par exemple :

char* temp_str;
temp_str=malloc(sizeof(char)*40);   <<<< a ce moment
if(temp_str==NULL)
{
     ....
}

Et pour rendre encore plus bizzare le probleme:
malloc est deja appelee avant dans le programme, mais pourtant elle cause l'erreur uniquement a cet endroit!

Que doi-je faire? Ne pas utiliser malloc pour allouer de la memoire ?

Voila ceci est mon probleme, je vous remercie d avance pour la lecture et l'etude de mon probleme.


l3KTr0 Was HeRe
jeudi 1 mars 2007 à 21:28:39 | Re : Probleme avec malloc

JCDjcd

Il nous faudrait le reste du code : qu'est-ce-qui est dans le '...'
Sinon ca me parait bizarre que tu dises que tu trouves pas le bug
alors qu'il n'y a aucun warning et error.
Par definition un bug est une erreur de logique dans la programmation
et non une erreur d'ecriture (en fait si parfois mais rarement,
genre inversion de symboles ou autres)...
Dans le '...' tu fais un "exit(1);" ou pas ?



Pourquoi faire simple quand on peut faire compliqué ?
jeudi 1 mars 2007 à 21:43:08 | Re : Probleme avec malloc

ShareVB

salut,

de plus, je pense que l'erreur dit quelquel chose...peux-tu nous dire quoi ?

ShareVB
jeudi 1 mars 2007 à 22:13:00 | Re : Probleme avec malloc

lektrosonic


1)Quand je dit ''erreur'' je veu dire la fenetre qui apparait.
2)Oui effectivement aucune erreur apparait lors de la compilation
3)Dans le ... il y a tout simplement:
MessageBox(hwnd,"Error on allocating memory","Error",MB_ICONERROR|MB_OK);
                              exit(0);

l3KTr0 Was HeRe
vendredi 2 mars 2007 à 09:34:30 | Re : Probleme avec malloc

ShareVB

salut,

je comprends pas bien comment tu fais pour débugger, si tu obtiens cette fenêtre, c'est que tu lances l'exe en dehors de visual studio...ca serait vraiment beaucoup plus simple de créer un projet dans VC++, d'ajouter tes fichiers dedans et de faire F5 (en mode Debug)...

cela dit lorsque tu cliques sur Yes dans la fenêtre, normalement, ca doit te donner un code en hexa...à savoir le code d'erreur...

ShareVB
vendredi 2 mars 2007 à 12:59:55 | Re : Probleme avec malloc

rt15

Membre Club Administrateur CodeS-SourceS
Salut,

C'est plus propre en castant le retour du malloc je pense... Sans compter que le problème vient peut etre de là.

char* temp_str;
temp_str=(char*)malloc(sizeof(char)*40);   <<<< a ce moment

Tu peux peut etre aussi essayer les fonctions d'alllocation de Windows.



vendredi 2 mars 2007 à 13:16:56 | Re : Probleme avec malloc

BruNews

Administrateur CodeS-SourceS
En C pas besoin de cast, c'est moins verbeux, le compilo sait qu'une adresse est un nombre 32 bits, aucune philo à la noix.
Ceci dit, le cast explicite est utile pour relire son code.

ciao...
BruNews, MVP VC++
vendredi 2 mars 2007 à 17:50:48 | Re : Probleme avec malloc

JCDjcd

Est-ce-que quelqu'un ici connait la méthode du pas-à-pas (je suis sur que ca existe !)
C'est parfois utile, pour l'avoir déjà utilisé par moi même ... c'est biensur de l'ironie :
le pas-à-pas est le SEUL moyen pour debbuger ton programme !!!
Je trouve ca scandaleux (si c'est le cas) que des personnes posent des messages
quand ils n'ont pas fais en amout le nécessaire pour savoir où est l'erreur.

Donc ta "localisation" normalement doit s'etre faite par le pas-à-pas et non pas par
la fenêtre du compilo. !


Remarque : il est vrai qu'un cast n'a jamais fait de mal à une mouche


Pourquoi faire simple quand on peut faire compliqué ?
vendredi 2 mars 2007 à 21:37:45 | Re : Probleme avec malloc

luhtor

Surtout avec le débuggeur de visual ... faudrait etre stupide pour s'en priver :)




Cette discussion est classée dans : probleme, fenetre, temp, str, malloc


Répondre à ce message

Sujets en rapport avec ce message

Probleme GTK [ par Jo ] Salut,Quelqu'un pourrait me dire ou est l'erreur ?char * fichier; char *z;gchar *temp;temp = gtk_entry_get_text(GTK_ENTRY(Data));fd1= fopen((char *)te probleme de fenetre transparente [ par pipo ] je cree une fenetre transparente avec WS_EX_TRANSPARENT mais le probleme c'est que quand je deplace ma fenetre le fond de la fenetre (le bureau de win probleme avec MessageBox [ par spirit ] salut à tous,dans une fonction j'ai fait:if(MessageBox(hWnd, "texte à afficher", "titre de la fenetre", MBOKCANCEL) == IBOK){le truc à faire}fin de la probleme affichage d'icones [ par moi1664 ] Bonjour je sui débutant en C et j'ai un probleme d'affichage dans une fenetre..Je commence la programmation API et je souhaite afficher une icone dans Probleme d'execution avec VC++ [ par AntiSlash ] petit probleme incomprehensible (?):j'utilise VC++ 5.0 et je dessine une fenetre. Quand je mets rien dans la fenetre, et que je creer mon .exe, je le PROBLEME AVEC FENETRE WINDOWS [ par Krox68 ] g un prb avec les fenetres windowsdes que jentre dans une boucle (while ou for) la fenetre se blokeRomano romano492@hotmail.com</a probleme de tableaux de caractere [ par rissorg ] Bonjour,j'ai un probleme d'enregistrement dans un tableau de plusieur chaine de caractere.voici la partie de mon source: while( fscanf(ptest_nom_ J'ai reussi mais... [ par oRTEEZ ] C'est bon j'ai enfin mon bitmap resize comme je le voulais dans ma fenetre mais j'ai evidemment un nouveau probleme.Mais avant je tiens a remercier ce SetWindowPos [ par Xentor609 ] Salut, J'utilise la fonction SetWindowPos avec un SWP_NOSIZE comme flags, pour deplacer ma fenetre.Jusque la aucun probleme. Le probleme se pose en f [win32] forcer une fenetre a rester en premier plan [ par tcok ] bonjour a tous,voila mon probleme, je developpe une application qui protege l'ordinateur sur lequel elle tourne, pendant l'absence de l'utilisateur, e


Nos sponsors


Sondage...

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,484 sec (4)

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