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

Re: segfault su Debian & su centos 5 no



Il 30/12/12 20:04, Elio Marvin ha scritto:
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...


concordo, ma non o resistito:
$ cat /etc/debian_version
6.0.6
$ gcc --version
gcc (Debian 4.4.5-8) 4.4.5
$ uname -a
Linux web 2.6.32-5-amd64 #1 SMP Sun Sep 23 10:07:46 UTC 2012 x86_64 GNU/Linux
$ gcc x.c
x.c: In function ‘main’:
x.c:15: warning: incompatible implicit declaration of built-in function ‘printf’
x.c: At top level:
x.c:6: warning: array ‘pa’ assumed to have one element
$ ./a.out
	Pippo - 0
	[TAGLIO un pezzo]
	Pippo - 108
Segmentation fault


*altro sistema*
$ cat /etc/debian_version
5.0.9
$ gcc --version
gcc (Debian 4.3.2-1.1) 4.3.2
$ uname -a
Linux elrond 2.6.26-2-686 #1 SMP Wed Sep 21 04:35:47 UTC 2011 i686 GNU/Linux
$ gcc x.c
x.c: In function ‘main’:
x.c:15: warning: incompatible implicit declaration of built-in function ‘printf’
x.c: At top level:
x.c:6: warning: array ‘pa’ assumed to have one element
$ ./a.out
	Pippo - 0
	[TAGLIO un pezzo]
	Pippo - 255

nessun errore nel secondo caso


ciao
Edoardo






Reply to: