Re: Za asistenta
U slucaju znakovne konstante se u polje adr upisuje njen Ascii kod.
Terminal CHARCONST u CUP specifikaciji mora biti deklarisan kao
Character, ako token za CHARCONST nosi podatak tipa Character. Onda cete
u cval imati objekat tipa Character. Pozivom cval.charValue() dobijate
vrednost tipa char.
Pozdrav,
Bojovic Marko
Zdravko N wrote:
Pozdrav,
Bojovic Marko
Zdravko N wrote:
Imam i ja jos par pitanja:
Posto u polje adr treba da upisujemo vrednost konstante, a to polje je tipa int, da li to znaci da u slucaju char konstante treba da upisemo njen kod (ako ne, onda sta?), mada se u javi koristi unicode kod kojeg to malo drugacije funkcionise .
Dalje, pokusavam da odredim vrednost konstante kod sledece smene:
num_or_char ::= NUMBER: val
{: Struct novi = Tab.noType;const_type = Tab.intType;
RESULT = novi; con_value = val; :}
|
CHARCONST :cval
{: Struct novi = Tab.noType; const_type = Tab.charType;
RESULT = novi; .... :};
Problem mi je to sto za NUMBER funkcionise u redu dok za CHARCONST kada stavim alias CHARCONST: cval (ili bilo koje drugo ime), parser baca ClassCastException. Kod koji se generise u parseru kada stavim alias je:
...
int cvalleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).left;
int cvalright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-0)).right;
*** String cval = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
...
i na liniji oznacenoj sa *** mi baca izuzetak, a kada rucno izmenim konverziju String i tip String u Character sve radi. Ne mogu da nateram parser da mi promenljiva cval bude tipa Character vec on automatski koristi String.
Ako bi asistent ili bilo ko drugi mogao da mi napise kako da izvucem vrednost konstante, i kao int radi upisivanja u polje adr, i kao char radi prepisivanja u JAVA fajl.
Pozdrav
Zdravko
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
- References:
- Re: Za asistenta
- From: Zdravko N <zdravkoetf@yahoo.com>
- Re: Za asistenta
Previous by date: Re: Za asistenta
Next by date: Re: Za asistenta
Previous by thread: u vezi ASCII koda Next by thread: Re: Za asistenta
Previous by thread: u vezi ASCII koda Next by thread: Re: Za asistenta