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 d?clar? ton tableau ? l'int?rieure 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@???
==========================================================================