Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[C] - Prosty parser, rekurencja

n00b_elektronic 23 Paź 2014 01:50 561 0
  • #1 23 Paź 2014 01:50
    n00b_elektronic
    Poziom 1  

    Witam!
    Mam następujący problem. Chciałbym napisać prosty parser działający na zasadzie rekurencji. Jednak na samym początku napotkałem na problem tokenizacji (nie wiem czy jest takie słowo w polskim w ogóle).

    Kod: c
    Zaloguj się, aby zobaczyć kod


    To co chciałbym teraz zrobić to pobrać dwa argumenty z komendy i przesłać je do funkcji realizującej jakieś zadanie na tych danych. Niestety w miejscu zaznaczonym, następuje coś co czego nie mogę obejść w żaden na razie sposób.

    Nie wiem dlaczego po wywołaniu funkcji w nazwijmy to w drugiej instancji "psuje" tablicę komenda, zamiast pobrać "swoją" część. Nie jestem w stanie zrozumieć tego zachowania.

    "Psucie" polega na tym, że zaznaczone wywołanie powoduje zamiast pobrania jednej liczby, powoduje zniszczenie wszystkiego poza tą liczbą mającą ulec zniszczeniu.

    Jeżeli ktoś miałby jakiś pomysł jestem otwarty na wszelkie pomysły/linki itp.
    Pozdrawiam


    UPDATE:
    Dobra doszedłem gdzie leży problem, ale nie wiem jak to rozwiązać. Mianowicie druga instancja (wywołanie?) funkcji interpreter nie przestawia przesłanego wskaźnika. Funkcja działa tak jak powinna, ale nie chce się przestawić wskaźnik.

    0 0