Problém z polom štruktúr – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Problém z polom štruktúr – C / C++ – Fórum – Programujte.comProblém z polom štruktúr – C / C++ – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
me.name0
Návštěvník
31. 7. 2013   #1
-
0
-

levels je štruktúra  

levels level[2];    // pole premenných typu levels
level[0].area[0][0] = {char(178)}  // sruktua ma 2d pole area, ktorého prvý člen chcem nastaviť na znak 178
// ale kompilátor píše:[Error] 'level' does not name a type
 

myslím si že to bude nejaká malá chybička , ale neviem aká ... 

Nahlásit jako SPAM
IP: 213.151.236.–
Martin Kozibrátka0
Stálý člen
1. 8. 2013   #2
-
-1
-
Mimo téma

level[0].area[0][0]=char(178);

Nahlásit jako SPAM
IP: 188.120.221.–
Savana.cz - neomezený webhosting za pár kaček :)
me.name0
Návštěvník
1. 8. 2013   #3
-
0
-

#2 Martin Kozibrátka

Stále :[Error] 'level' does not name a type

Nahlásit jako SPAM
IP: 213.151.236.–
Sefiros0
Návštěvník
1. 8. 2013   #4
-
0
-

kolize jmen?? skus použít jmenný prostor

Nahlásit jako SPAM
IP: 80.188.252.–
1. 8. 2013   #5
-
0
-

máš ten level jako datový typ? Jak máš tu strukturu udělanou?

hu

Nahlásit jako SPAM
IP: 195.178.67.–
1. 8. 2013   #6
-
0
-

   

struct miry {
  int vyska;
  float vaha;
};

//definice promennych
struct miry pavel, jirka;

//druha moznost
typedef struct {
  int vyska;
  float vaha;
} Miry;

//definice promennych
Miry ferda, honza;

hu

Nahlásit jako SPAM
IP: 195.178.67.–
me.name0
Návštěvník
1. 8. 2013   #7
-
0
-

#6 hlucheucho

struct levels {
    int cislo;
    char area [y][x];
};

struct levels level[3]; //všetko v poriadku...
level[0].cislo = 5;// až teraz vypisuje error!

tvoju prvú štruktúru som skúšal a tiež píše chybu ked chcem priradit hodnoty!
skúsim ten menný priestor!

Nahlásit jako SPAM
IP: 213.151.236.–
1. 8. 2013   #8
-
0
-

problém by mohl být v char area [y][x]; Záleží na tom, jakou normu překladač implementuje. Takto alokovat dynamické pole je možné (jen tuším) od zavedení standardu C++11.  Mám starší překladač, který toto neumožňuje. Pokud ale použiju:

struct levels {
		int cislo;
		char area [5] [4];
	};

	struct levels level[3];

level[0].cislo = 8;

je vše v pořádku.

hu

Nahlásit jako SPAM
IP: 195.178.67.–
me.name0
Návštěvník
1. 8. 2013   #9
-
0
-

#8 hlucheucho

aj ked skopírujem tvoj kod vypisuje to isté :( asi budem musieť vymyslieť spôsob bez štruktúry...

Nahlásit jako SPAM
IP: 213.151.236.–
KIIV
~ Moderátor
+43
God of flame
1. 8. 2013   #10
-
0
-

#9 me.name
spis sem dej jaky prekladac pouzivas... todle uz bude spis nejakou uber starou verzi...

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
1. 8. 2013   #11
-
0
-

zkus tu strukturu udělat jako datový typ s typedef. To mi fungovalo vždy.

Ten poslední kód, co jsem ti poslal, byl vyzkoušen v C++Builderu 2010 a v podstatě odpovídá příkladu z Učebnice jazyka C od Herouta druhé vyd. z r. 1993.

hu

Nahlásit jako SPAM
IP: 195.178.67.–
KIIV
~ Moderátor
+43
God of flame
1. 8. 2013   #12
-
0
-

#11 hlucheucho
tvuj priklad funguje i v  gcc 4.6, gcc 4.7, gcc 3.4.4 .... (to same  g++)

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
1. 8. 2013   #13
-
0
-

možná by bylo lepší aby udělal Ctrl-c a Ctrl-v. I nepatrný překlep někdy dovede z banálního příkladu udělat neřešitelnou záhadu. Takových situací jsem už několik "vyrobil" a pokaždé jsem si připadal jak největší pitomec na světě

hu

Nahlásit jako SPAM
IP: 195.178.67.–
me.name0
Návštěvník
1. 8. 2013   #14
-
0
-

#10 KIIV
Orwell Dev c++ Version: 5.4.2
MinGW GCC 4.7.2 23-bit Release

Nahlásit jako SPAM
IP: 213.151.236.–
me.name0
Návštěvník
1. 8. 2013   #15
-
0
-

#13 hlucheucho
typedef struct {
int vyska;
float vaha;
} Miry;                 

Miry ferda, honza;
ferda.vaha = 5.5; // [Error] 'ferda' does not name a type

Nahlásit jako SPAM
IP: 213.151.236.–
KIIV
~ Moderátor
+43
God of flame
1. 8. 2013   #16
-
0
-

#15 me.name
a celej kod? treba tam mas neco blbe jinde

Nahlásit jako SPAM
IP: 94.112.35.–
Program vždy dělá to co naprogramujete, ne to co chcete...
vitamin+8
Grafoman
1. 8. 2013   #17
-
0
-

#15 me.name
Expression (vyraz, v tvojom pripade priradenie do premennej) sa musi nachadzat vo funkcii:

typedef struct {
int vyska;
float vaha;
} Miry;                 



int main(){
	Miry ferda, honza;	//toto moze byt aj mimo funkcie, vtedy to bude gloabalna premenna
	ferda.vaha = 5.5; 
}
Nahlásit jako SPAM
IP: 95.105.152.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
1. 8. 2013   #18
-
0
-

#17 vitamin
to mne nenapadlo se zeptat, jestli to má ve funkci. Beru to jako naprostou samozřejmost.

hu

Nahlásit jako SPAM
IP: 188.95.60.–
me.name0
Návštěvník
1. 8. 2013   #19
-
0
-

#17 vitamin
to by ma ani nenapadlo že to musí byt vo vnútri funkcie ani som niečom takom nepočul  
je aj nejaké odôvodnenie?

Nahlásit jako SPAM
IP: 213.151.236.–
vitamin+8
Grafoman
1. 8. 2013   #20
-
0
-

#19 me.name
Bolo by to neprehladne a hlavne by sa tazko urcovalo poradie v akom sa maju vyhodnocovat vyrazy, hlavne ked by boli v roznych suboroch a rozne by sa includovali. Pri oddelenom preklade by zas mohlo dojst k viacnasobnemu spusteniu vyrazu...

Nahlásit jako SPAM
IP: 95.105.152.–
obfuscate: "The cruel god Malloc will strike you down. "
ZMeson: "That's the C god. C++ has a new god. "
KIIV
~ Moderátor
+43
God of flame
1. 8. 2013   #21
-
0
-

Deklarace promennych muze byt mimo kod, protoze nekdy muzeme chtit globalni promenne...

Muze tam byt i zakladni inicializace (pokrocila uz nekdy neprojde - zalezi na prekladaci co dovoli)

Nicmene prace s promennou je uz "program", tudiz musi byt ve funkci.

Nahlásit jako SPAM
IP: 94.112.35.–
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, 23 hostů

Podobná vlákna

Funkcia s polom — založil lukas.balaz

Pole struktur — založil Kuba-$

Velikost pole struktur — založil Redby

Moderátoři diskuze

 

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