problem v C

Andy Jancura andy_jancura
Středa Březen 17 12:05:03 CET 2004


> > Ceckari pomozte,
> > mam nasledujici pole a chci tisknout data v nich obsazena timto zpusobem
> > printf("%s",menu1[mnu]);
> > problem je ten, ze to vytiskne az do uplneho konce pole,
> > tedy napr. pro mnu=1 : "2. Teplota      3. Cas/Datum    "
> > neni nejake elegantnejsi reseni, nez postupny zapis daneho poctu char-u
> > (napr. printf("%c%c%c%c...%c",menu2[mnu])
> > Nacpat to do nejakeho bufferu nepripada v uvahu, je malo RAM
> > Dalsi vec je pristup do pole ukazatelem, jak na to? Jde mi o volani fce 
>s
> > parametrem cislo polozky v menu a vlastni pole menu a ta fce ma urcenou
> > polozku vytisknout na prvni radek LCD displaye a za ni nasledujici 
>polozku
> > na druhy radek.
> > Diky
> > Jakub Ladman
> > static char code menu1[3][16]= {"1. INFO         ",
> >                                                    "2. Teplota      ",
> >                                                    "3. Cas/Datum    "};
> > static char code menu2[5][16]= {"1. Zobrazit     ",
> >                                                    "2. Nizka teplota",
> >                                                    "3. Vys.  teplota",
> >                                                    "4. Krit. teplota",
> >                                                    "5. Hystereze  "};
> > static char code menu3[3][16]= {"1. Zobrazit     ",
> >                                                    "2. Upravit cas  ",
> >                                                     "3. Upravit datum"};
>


Princip riesenia je nasledovny:

const char Menu1_Txt_1[] = "1. Info";
const char Menu1_Txt_2[] = "2. Teplota";
const char Menu1_Txt_2[] = "3. Cas/Datum"

code *char Menu1[] = { Menu_Txt_1, Menu_Txt_2, Menu_Txt_3};

pristup ku polozkam:

printf("%s\n", Menu1[1]);

A.

_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.






Další informace o konferenci Hw-list