Re: segfault su Debian & su centos 5 no
On 30/12/2012 19:45, emmanuel segura wrote:
#include<stdio.h>
typedef struct Name {
char *name;
questo è un puntatore, se vuoi farlo puntare ad un'area di memoria,
allora prima devi allocarla (se non ricordo male in C il comando è malloc).
int id;
} name_t;
name_t pa[];
qui hai creato un vettore senza dare una dimensione... probabilmente
prende per default 1, quindi puoi usare un solo elemento (posizione 0)
int main()
{
int i,SIZE = 255;
for(i = 0; i<= SIZE; i++)
{
pa[i].name = "Pippo";
non mi sembra proprio che questa sia l'operazione corretta per assegnare
un valore ad un puntatore, inoltre stai andando oltre la dimensione del
vettore
pa[i].id = i;
printf("\t%s - %d\n",pa[i].name,pa[i].id);
}
}
Quello che mi chiedo io è come faccia a non andare in segfault al ciclo 0
Ciao
Davide
--
Dizionari: http://linguistico.sourceforge.net/wiki
Client di posta: http://www.mozilla.org/products/thunderbird
GNU/Linux User: 302090: http://counter.li.org
Non autorizzo la memorizzazione del mio indirizzo su outlook
Reply to: