Forum » Programiranje » C++ - čudno obnašanje dinamično alociranega polja
C++ - čudno obnašanje dinamično alociranega polja
Nejc Pintar ::
Imam naslednjo funkcijo:
problem je, da se mi že po tisti prvi inicializacijami z ničlami v arrayu pojavljajo čudne vrednosti:
Če kdo vidi, kje delam napako naj mi prosim pove, saj se mi malo mudi.
LP, Nejc
vozlisce * beri() { int x, y; ifstream f("graf.txt"); f>>a; matrika=new int*[a]; for (int i=0; i<a; i++) { matrika[i]=new int[a]; } for (int i=0; i<a; i++) { for (int j=0; j<a; j++) { matrika[i][j]=0; } } while (!f.eof()) { f>>x; f>>y; matrika[x][y]=1; matrika[y][x]=1; } vozlisce * v = new vozlisce[a]; for (int i=0; i<a; i++) { v[i].dolzina=32768; v[i].ime=i; v[i].predhodnik=-1; v[i].status=0; } return v; }
problem je, da se mi že po tisti prvi inicializacijami z ničlami v arrayu pojavljajo čudne vrednosti:
(gdb) print **matrika@a@a $5 = {{0, 0, 0, 0, 0, 0}, {0, 33, 0, 0, 0, 0}, {0, 0, 0, 33, 0, 0}, {0, 0, 0, 0, 0, 33}, {0, 0, 0, 0, 0, 0}, {0, 33, 0, 0, 0, 0}}
Če kdo vidi, kje delam napako naj mi prosim pove, saj se mi malo mudi.
LP, Nejc
Lahko je biti prvi, če si edini!
- spremenil: Nejc Pintar ()
BigWhale ::
Kaj pa imas v graf.txt? Tole meni dela:
Ali imas v fajlih kaj narobe ali pa pokvarjen racunalnik/prevajalnik/debugger... ;)
#include <stdio.h> int main() { int a, x, y; a = 3; int **matrika; matrika=new int*[a]; for (int i=0; i<a; i++) { matrika[i]=new int[a]; } for (int i=0; i<a; i++) { for (int j=0; j<a; j++) { matrika[i][j]=666; } } for (int i=0; i<a; i++) { for (int j=0; j<a; j++) { printf ("%d\n", matrika[i][j]); } } }
Ali imas v fajlih kaj narobe ali pa pokvarjen racunalnik/prevajalnik/debugger... ;)
Zgodovina sprememb…
- spremenil: BigWhale ()
Nejc Pintar ::
xxx@zzz:~/Documents/APS$ cat graf.txt 6 0 1 1 2 2 3 3 4 4 5
Lahko je biti prvi, če si edini!
Nejc Pintar ::
V fajlih ni nič narobe, ker do tiste točke prebere le velikost polja s fajla, ki je očitno pravilna, pa tudi probal sem ročno nastavit vrednost pa ne laufa...
btw, tvoj program mi dela.
doh, debuggerju mede, ali pa ga ne znam uporabljat?
btw, tvoj program mi dela.
doh, debuggerju mede, ali pa ga ne znam uporabljat?
Lahko je biti prvi, če si edini!
Zgodovina sprememb…
- spremenil: Nejc Pintar ()
Jean-Paul ::
p **matrika@a@a
Tako ne bo šlo, ker pomnilnika nisi rezerviral v enem kosu.
Poskusi tako:
p *matrika[0]@a, p *matrika[1]@a, ...
Tako ne bo šlo, ker pomnilnika nisi rezerviral v enem kosu.
Poskusi tako:
p *matrika[0]@a, p *matrika[1]@a, ...
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [Java - DN] Naključna številaOddelek: Šola | 1350 (879) | nyler |
» | Kruskalov algoritem težave pri implementacijiOddelek: Programiranje | 1601 (1375) | zacetnik11 |
» | Java-random-poljeOddelek: Programiranje | 949 (828) | LeQuack |
» | [Python]Računanje poljOddelek: Programiranje | 833 (588) | phyro |
» | mnozenje matrikOddelek: Programiranje | 4724 (4386) | Vesoljc |