Moi non plus je ne comprends rien.
Quel est le programme qui plante ?
Xav
On Mon, 2008-11-17 at 21:54 +0000, Patrick Dupre wrote:
> Merci,
>
> Mais je comprends rien,
> C'est exact, le segmentation fault est du a:
> for (i = 0 ; i < nb_pt ; i++) fprintf (file_out,"%11.5f %g\n", x [i], y
> [i]) ;
> qui est a la fin du programme.
> Si je fait :
> for (i = 0 ; i < nb_pt ; i++) fprintf (file_out,"%11.5f %g\n", x [i]) ;
>
> Ca marche,
>
> de meme ceci marche:
>
> #define MAXDBL 4194304
> double x[MAXDBL], y [MAXDBL] ;
> int main () {
> unsigned long int i;
> unsigned long int nb_pt = MAXDBL ;
> FILE *file_out ;
> file_out = fopen ("tmp.txt", "w") ;
> for(i = 0 ; i < MAXDBL ; i++)
> {
> x [i] = 1.0 ;
> };
> for (i = 0 ; i < nb_pt ; i++) fprintf (file_out, "%11.5f %g\n", x [i],
> y [i]) ;
> return 0;
> };
>
> Ou est l'erreur ?
>
>
> >
> > Regarde si tu n'aurais pas dclar ton tableau l'intrieure d'une fonction.
> > Si oui, ca va mettre ton gros tableau dans la pile, et l, c'est une autre
> > histoire.
> >
> > Jean-Luc.
> >
> >
> > Le Monday 17 November 2008 21.27:40 Patrick Dupre, vous avez crit:
> >> Bonsoir,
> >>
> >> Je declare:
> >> double x [1048576]
> >> et j'obtiens un segmenation fault !
> >> double x [524288]
> >> est OK.
> >>
> >> est-ce qu'il y a des tailles maximum en c ?
> >> J'ai 1 Go de RAm, et j'ai deux variable telles que x !
> >
> >
> >
>
> --
> ---
> ==========================================================================
> Patrick DUPRÉ | |
> Department of Chemistry | | Phone: (44)-(0)-1904-434384
> The University of York | | Fax: (44)-(0)-1904-432516
> Heslington | |
> York YO10 5DD United Kingdom | | email: pd520@???
> ==========================================================================