Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++]Struktury dynamiczne - dodawanie kolejnych osób do bazy danych

Ostatnio zmodyfikowano 2014-12-16 17:18
Autor Wiadomość
jedrula.pogo
Temat założony przez niniejszego użytkownika
» 2014-12-06 14:08:15
C/C++
do
{
    /*
            * Operacje na lekarzu o indeksie idx
            */
} while(( idx = szukaj_wg_nazw( LK, index, nazw, ++idx ) ) != - 1 ); //następny lekarz


Tutaj mam wywołać już funkcje rysujące tabelę ?

Czyli :

C/C++
{
    if( idx != - 1 ) //znaleziono
    {
        lista_naglowek();
        do
        {
            lista_lekarz( LK + idx );
        }
        while(( idx = szukaj_wg_nazw( LK, index, nazw, ++idx ) ) != - 1 ); //następny lekarz
       

Chyba będzie to tak?

P-122339
Kaikso
» 2014-12-06 14:15:48
Chyba tak, jak byś mógł napisać co robi funkcja lista_lekarz() będę pewny czy aby na pewno dobrze. Możesz też przetestować działanie i sam zobaczysz.
P-122341
jedrula.pogo
Temat założony przez niniejszego użytkownika
» 2014-12-06 18:25:12
Faktycznie, po dostosowaniu do zmiennych w kodzie, wszystko hula.
P-122377
jedrula.pogo
Temat założony przez niniejszego użytkownika
» 2014-12-15 23:21:20
Jeszcze jedno pytanie z ciekawości. Wiem, że trochę odkopuję temat.

C/C++
while(( idx = szukaj_wg_nazw( LK, index, nazw, ++idx ) ) != - 1 );


Jaka jest różnica w tym przypadku pomiędzy inkrementacją ++idx, a na przykład idx++ ?
P-122921
darko202
» 2014-12-16 11:34:17

jeśli np. idx = 5
to w przypadku  ++idx inkrementacja następuje przed obliczeniem warunku
while(( idx = szukaj_wg_nazw( LK, index, nazw, ++idx =6) ) != - 1 );

a idx++ inkrementacja następuje po obliczneiu warunku
while(( idx = szukaj_wg_nazw( LK, index, nazw, idx++ =5) ) != - 1 );

P-122934
Monika90
» 2014-12-16 17:18:09
while(( idx = szukaj_wg_nazw( LK, index, nazw, ++idx ) ) != - 1 );
Nie pisz takiego kodu. Nawet jeżeli to nie jest niezdefiniowane zachowanie, to intencja autora kodu jest niejasna. Ktoś będzie się zastanawiał, co też autor chciał przez to osiagnąć, dlaczego modyfikuje tę samą zmienną dwa razy w jednym wyrażeniu?

Wystarczy po prostu coś takiego:
C/C++
while(( idx = szukaj_wg_nazw( LK, index, nazw, idx + 1 ) ) != - 1 );

P-122947
1 2 3 4 « 5 »
Poprzednia strona Strona 5 z 5