AVR, C a pole struktur – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

AVR, C a pole struktur – C / C++ – Fórum – Programujte.comAVR, C a pole struktur – C / C++ – Fórum – Programujte.com

 

DAEW
~ Anonymní uživatel
4 příspěvky
2. 2. 2011   #1
-
0
-

Prosím o pomoc, vytvářím prográmek pro Atmel32 s LCD, tam by mělo být k dispozici menu, které jsem chtěl vytvořit pomocí struktur a 2-rozměrného pole, mám to nějak takto:

typedef struct menu
{ char jmeno[8];
char anone:1;
}MENU;
struct MENU polozka_menu[5][50];
#define polozka_menu[0,0].jmeno="menu1"; //proměnné hl. menu
#define polozka_menu[0,1].jmeno="menu2";
#define polozka_menu[0,2].jmeno="menu3";
#define polozka_menu[0,3].jmeno="menu4";
#define polozka_menu[0,4].jmeno="menu5";
#define polozka_menu[1,0].jmeno="submenu1-A";
#define polozka_menu[1,1].jmeno="submenu1-B";
#define polozka_menu[1,2].jmeno="submenu1-C";
atd.atd.

v samotném programu se k proměnným nemůžu nějak dostat:

polozka_menu[0,10].jmeno="aaaa" //to mi samozrejme nefunguje, docetl jsem se, ze takto NE, ikdyž nevím proč
strcpy(polozka_menu[0,10].jmeno,"sss"); //ale nejde mi to ani takhle
polozka_menu[0,10].anone=1; //ale i u tohoto mi to pise "invalid expression"

Zkoušel jsem hledat po netu, ale podobný příklad jsem nikde nenašel, určitě to bude nějaká ptákoviny, ale už jsem z toho zoufalý... Případně moc dík za každou radu.

Nahlásit jako SPAM
IP: 83.208.59.–
KIIV
~ Moderátor
+43
God of flame
2. 2. 2011   #2
-
0
-

no docela bych se bal spis pametovy narocnosti ... 250*9B ... to mas pres 2kB

byt tebou, kouknu spis na pgmspace (alias konstanty v programove pameti)
+ nemusi byt uplne potreba vicerozmerne pole..

a kdyby to fungovalo tak submenu-1B uz je na 8 znaku ponekud dlouhe.. uvazime li ze se tam musi nacpat i znak \0

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
2. 2. 2011   #3
-
0
-

no mám k dispozici 64kB, těch 8B i ten text byl jen na test, to jsem si nevšim, že jsem to přeťáp
v úmyslu mám 8polož. menu s 10 až 50 "dvojpoložkami" - jméno a stav, tak jak to mám, mi to přišlo pro začátečníka jako nejjedoduší pro naprogramování a vcelku i efektní (bez ohledu na velikost a rychlost, která mne teď tak nehoní, časem snad), jak se budu učit budu to vše zefektivňovat, ale chci to mít zatím "nějak" funkční, už teď bych věděl, jak to obejít přes více polí, ale je to zbytečné a hlavně neusnu, než najdu chybu... dík za případné rady
na ten pgmspace kouknu, to nevím co je :)

Nahlásit jako SPAM
IP: 79.98.158.–
KIIV
~ Moderátor
+43
God of flame
2. 2. 2011   #4
-
0
-

tak jestli atmel32 bylo jako 32b atmel tak to pak jo..

jen par poznamek tedy:
indexuje se [y][x] tj. ne [y,x]
strcpy by melo jit .. jen bacha na delsi retezce...

u tech 32b si nejsem uplne jist jak tam je pristup do program space


Nahlásit jako SPAM
IP: 94.142.234.–
Program vždy dělá to co naprogramujete, ne to co chcete...
DAEW
~ Anonymní uživatel
4 příspěvky
2. 2. 2011   #5
-
0
-

zítra zkusím udělat jen samostatný program, vyhodím vše, jen nadeklaruji to pole a budu se do něj snažit něco nějak zapsat, když to nepůjde dám to komplet sem (nynější program je už moc dlouhý) a jestli někdo přijde, kde mám co blbě, zatím děkuji....

Nahlásit jako SPAM
IP: 79.98.158.–
DAEW
~ Anonymní uživatel
4 příspěvky
3. 2. 2011   #6
-
0
-

tak chyba byla, že já měl tu definici v headru, místo ve fci, teď už to šlape, dělám v tom jen pár hodin, jediný co jsem před tím dělal byl TurboPascal :) a v něm program o cca 10tis. řádcích, ale už je to pár let a teď to Cko.... jinak dík za pomoc, určitě ji ještě využiju

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

Podobná vlákna

Pole struktur — založil Kuba-$

Pointer na pole struktur — založil Marcel

C Pole Struktur String — založil NotBeginner

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ý