[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: segfault su Debian & su centos 5 no



On 30/12/2012 20:04, Elio Marvin wrote:
> In data domenica 30 dicembre 2012 19:45:38, emmanuel segura ha scritto:
>> > Ciao a tutti
>> > 
>> > Sto giocando con un piccolo e stupido programma in C che posto qua sotto,
>> > sulla mia debian 6.0.6 va in segfault su una centos 5 no, la cosa stranna
>> > che va in segfault quando il programma arriva a 108 nel ciclo for
>> > 
>> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> > #include <stdio.h>
>> > 
>> > typedef struct Name {
>> >         char *name;
>> >         int id;
>> > } name_t;
>> > 
>> > name_t pa[];
>> > 
>> > int main()
>> > {
>> >         int i,SIZE = 255;
>> >         for(i = 0; i <= SIZE; i++)
>> >         {
>> >                 pa[i].name = "Pippo";
>> >                 pa[i].id = i;
>> >                 printf("\t%s - %d\n",pa[i].name,pa[i].id);
>> >         }
>> > }
>> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Bisognerebbe indagare sulla gestione della memoria: eventuali differenze fra i 
> due sistemi...
> 
> E' la prima cosa che mi è saltata in mente :)

A me salta in mente che il programma è sbagliato. L'array di "pa" non
viene mai allocato.

federico

-- 
Federico Di Gregorio                         federico.digregorio@dndg.it
Studio Associato Di Nunzio e Di Gregorio                  http://dndg.it
 To prepare such test data, I get into the meaniest, nastiest frame of
  mind that I can manage, and I write the cruelest code I can think of;
  then I turn around and I embed that in even nastier constructions
  that are almost obscene.                                  -- D.E.Knuth


Reply to: