|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2004
Città: Milano
Messaggi: 415
|
[c] perchè crasha?
typedef struct biglia{int x,y;};
struct biglia *scorrib; int x,y=0; for(i=0; i < r ; i++) {for(j=0; j < c ; j++) {scanf("%d", &v); if(v!=0) {printf("1"); scorrib->x=x+j; scorrib->y=y+i; printf("2"); ....... Il programma mi stampa 1 e poi crasha prima di stamparmi 2... cosa faccio di sbagliato? avevo provato anche con (*scorrib).x=x+j; ma il risultato è lo stesso..
__________________
Ho concluso con Worp, -V3G3TA-, Marco911, TheDragon81, ciociola ------------------------------------------------ Diego |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
Quote:
se la tua intenzione non è quella di allocare dinamicamente la struttura struct biglia scorrib;
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
|
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Mar 2004
Città: Milano
Messaggi: 415
|
ok grazie..ho allocato la biglia con la malloc e il programma procede, però ho anche una stringa da inserirci dentro che indica il colore e adesso si blocca sull strcpy...
typedef struct biglia{int x,y; char *colore;}; struct biglia *scorrib; scorrib=malloc(sizeof(struct biglia)); int x,y=0; char col[100]; for(i=0; i < r ; i++) {for(j=0; j < c ; j++) {scanf("%d", &v); if(v!=0) {scorrib->x=x+j; scorrib->y=y+i; printf("1"); strcpy(scorrib->colore,col); printf("2");
__________________
Ho concluso con Worp, -V3G3TA-, Marco911, TheDragon81, ciociola ------------------------------------------------ Diego |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
è ancora un problema di allocazione, della stringa colore è allocato il puntatore presente nella tua struct.
se sai a priori che la lunghezza massima è di 100 caratteri dichiara la stringa come hai fatto per col, ah metti il codice nel tag CODE così si capisce meglio
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Mar 2004
Città: Milano
Messaggi: 415
|
potresti postarmi cosa devo modificare? perchè ho allocato la stringa con la malloc ma non va lo stesso..
__________________
Ho concluso con Worp, -V3G3TA-, Marco911, TheDragon81, ciociola ------------------------------------------------ Diego |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:41.












ho concluso con: kvegeta, doctordb, Leland Gaunt.








