Bonjour à tous je suis nouveau sur ce forum.
Je dois réaliser une série de calculs additionnant des chiffres pouvant aller jusqu'à un écart de 10^8, le problème c'est que l'utilisation des double me fait apparaitre au bout d'un certain moment des infini. Ni une ni deux je me dis "tiens j'ai jamais essayé les long double", je fais un ctrl+R sur l'ensemble de mes fichiers et je compile sereinement.
Mais au moment de l'exécution : crash direct (évidemment mon code fonctionnait parfaitement avant !). Je fais un debuggueur celui ci me dit que cela vient de ma fonction inserer() mais sans plus d'argument (alors qu'il devrait normalement préciser la valeur des paramètres d'entrées qui sont deux long double et une liste)... Signal SIGSEGV étrange mais pourquoi pas.
Alors je fais à l'ancienne et en bourrin en regardant un peu ce qu'il passe à coup de printf de bricoleur. Et là... grand mystère !
J'ai posé un breakpoint juste avant la première instruction du main, aucun problème... dès que je fais nextline et qu'il entamme la première instruction il me fait le rapport ci-dessous
J'ai beau mettre mon printf bien avant l'exécution de la fonction, et même juste après les déclarations de variables le programme refuse d'afficher mon printf("youpi") et semble donc bugguer avant... On dirait donc qu'il y a un problème au niveau des liens effectués au début pour le compilateur bien avant le main.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #include <stdio.h> #include <stdlib.h> #include <time.h> #include "data.h" #include "random.h" #include "liste.h" int main(int argc,char* args[]) { //Breakpoint NTD srand(time(NULL)); //Plantage ! long i, a, s; cellule* f = NULL; FILE* csv = fopen("Data.csv","w"); long double T1[100001], T2[100001]; T1[0] = 0.0; T2[0] = 0.0; long double m = 0; // ... // }
Voilà la tronche de mon rapport debug :
Merci beaucoup !Call Stack
0 probe() //Je ne connais pas cette fonction elle n'est pas de moi
1 insertion()
2 _mingw_CRTSartup()
3 mainCRTStartup()
Partager