Trojrozměrné pole a indexace – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Trojrozměrné pole a indexace – C / C++ – Fórum – Programujte.comTrojrozměrné pole a indexace – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
vollf820
Stálý člen
2. 12. 2008   #1
-
0
-

Zdravím lidi.

Udělal jsem si trojrozměrné pole (3x3x3) a můj problém spočívá v tom, že prvek který je na indexech [0][1][2] se zobrazí taky na indexu [0][0][5] atd. atd. Jak je to možné? Myslel sem že to nejde a docela bych se toho potřeboval zbavit. Může mi to někdo vysvětlit popřípadě popsat o co se jedná nebo jak se toho zbavit??? Pro názornost přikládám kus kodu.



#include <iostream>

using namespace std;

int main()
{

int pole[3][3][3];

cin >>pole[0][1][2];

cout << endl<<pole[0][1][2]<<endl;
cout <<pole[0][0][5];

cin.get();
cin.get();
return 0;
}
Vypíš obě čísla stejné. Tak to jde dál. pole[0][2][0] bude i na indexu pole[0][0][6] ale jak je to možné, když by pole nad index [0][0][2] nemělo existovat?? Díky za rady


Nahlásit jako SPAM
IP: 91.195.106.–
Reklama
Reklama
TooM
~ Anonymní uživatel
5 příspěvků
2. 12. 2008   #2
-
0
-

Imho jelikoz je to lokalni promenna, tak v tom poli budou nahodne hodnoty. Zkus ho pri deklaraci hned inicializovat na nuly, myslim ze by stacilo int pole[3][3][3] = {0};

Nahlásit jako SPAM
IP: 147.229.200.–
o-lox0
Super člen
2. 12. 2008   #3
-
0
-

To vollf82 : TOMUHLE BY SE MĚLO DLE MĚ ZAMEZIT.
Proč dáváš všechny své příspěvky duplicitně na několik fór?? Jako forum.builderu??

K čemu to je že nutíš jeden a ten samý problém bezostyšně vypracovávat zbytečně několik lidí????
A dělá to víc lidí. (to by tě ubylo dát si prodlevu, jsi taková busy HIGH VIP persona??)

Mám odpověď a řešení jako přetypování operátoru [] ale jen s největší nechutí to sem píšu.

Jen můj názor

Nahlásit jako SPAM
IP: 85.71.152.–
vollf820
Stálý člen
2. 12. 2008   #4
-
0
-

O-lox:

Pokud chceš poradit poraď, pokud ne tak se nevyjadřuj. Nemůžu za to že lezeš i na jiný fórum jako já.

Ozvalo se mi asi 7 lidí (včetně tebe) a jedinej TooM tady mi dal kloudnou odpověď. Jinak všude podobný jako ty křičej ... ježíííš to je blb, takový prasárny, tomu by se mělo zamezit a bla a bla a bla ....... Když si myslíš že jsi takovej mistr světa a já úplnej looser tak proč mi na každej dotaz odpovídáš (i když řečma stylu off-topic).

Zkrátka když uvidíš vlákno a tam autora Vollf, tak na to neklikej, budeš mít klid ne ???

To TooM Díky moc zkusim.

Nahlásit jako SPAM
IP: 91.195.106.–
o-lox0
Super člen
2. 12. 2008   #5
-
0
-

To vollf82 : no comment :D

Nahlásit jako SPAM
IP: 85.71.152.–
vollf820
Stálý člen
2. 12. 2008   #6
-
0
-

No to sem rád :D

Jinak aby byl jasnej smysl mýho dotazu nahoře.

Když mam int pole[3] a dam vypsat pole[4] tak mi to vypíše nějaký náhodný číslo nebo nesmysl protože šaham do volný paměti že jo.

Proto sem myslel že když mam int pole [3][3] a vypíšu [0][4] tak to bude mít stejnej efekt. Ale nemá. Vypíše to prvek kterej je na souřadnicích [1][0] Toť vše... půlka lidí mě za to chtěla sežrat :D Tak sem asi špatně pochopil funkci vícerozměrných polí.

Nahlásit jako SPAM
IP: 91.195.106.–
KIIV+42
God of flame
2. 12. 2008   #7
-
0
-

To vollf82 : formalne ctes mimo pole ale jak se ulozi data v ram? no prece za sebou...

mas pak indexy:
0 1 2 0 1 2 0 1 2 ....
0 0 0 1 1 1 2 2 2 ....
0 0 0 0 0 0 0 0 0 1 .....

Nahlásit jako SPAM
IP: 80.188.94.–
Program vždy dělá to co naprogramujete, ne to co chcete...
paul270
Návštěvník
2. 12. 2008   #8
-
0
-

Ovšem pokud bys někdy v budoucnu tvořil dynamické pole, tedy takové, kde si jeho velikost určíš až za běhu programu, tak tam neplatí, že jednotlivé řádky jsou v RAM za sebou.

Nahlásit jako SPAM
IP: 88.103.71.–
KIIV+42
God of flame
2. 12. 2008   #9
-
0
-

To paul27 : to jiste... obzvlaste pokud by delal dynamicky vsechny dimenze...
ale kdyz tu mel int pole[3][3][3]; tak tam to nehrozi...

btw vzdy zboznuju kdyz nekdo ma pole ukazatelu na nejakej typ a pak chtej udelat z neco ** prom -> neco prom[ ][ ] .... takovej nesmysl :D

Nahlásit jako SPAM
IP: 80.250.27.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 81 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý