Very ugly work in progress...
This commit is contained in:
parent
40917b92c1
commit
423ed1f29e
7
heyo.x
7
heyo.x
@ -1,13 +1,6 @@
|
||||
одреди слово = 1;
|
||||
одреди број = 4;
|
||||
|
||||
одреди системски_позив (
|
||||
читај = 0,
|
||||
пиши = 1,
|
||||
отвори = 2,
|
||||
затвори = 3,
|
||||
изађи = 60)
|
||||
|
||||
одреди описивач (
|
||||
улаз,
|
||||
излаз)
|
||||
|
29
xiranda.c
29
xiranda.c
@ -42,12 +42,24 @@ static void add_coin (int data, int size, char * text) {
|
||||
}
|
||||
|
||||
static void kill (char * text, int offset) {
|
||||
int i;
|
||||
terminal_colour (colour_red, effect_bold);
|
||||
echo (text);
|
||||
terminal_cancel ();
|
||||
echo (coin_text [offset]);
|
||||
echo ("\n");
|
||||
/*exit (log_failure);*/
|
||||
for (i = 0; i < offset + 3; ++i) {
|
||||
if (i == offset) {
|
||||
terminal_colour (colour_red, effect_bold);
|
||||
echo (coin_text [i]);
|
||||
echo (" ");
|
||||
terminal_cancel ();
|
||||
} else {
|
||||
echo (coin_text [i]);
|
||||
echo (" ");
|
||||
}
|
||||
}
|
||||
echo ("\n");
|
||||
}
|
||||
|
||||
int main (void) {
|
||||
@ -107,14 +119,13 @@ int main (void) {
|
||||
int counter = 0;
|
||||
type_size [type_code] = 4;
|
||||
for (++offset; offset < coin_code; ++offset) {
|
||||
if ((coin_data [offset] == coin_symbol) && (* coin_text [offset] == ')')) {
|
||||
++offset;
|
||||
break;
|
||||
} else if (coin_data [offset] == coin_marker) {
|
||||
if (coin_data [offset] == coin_marker) {
|
||||
string_copy (constant_name [constant_code], coin_text [offset]);
|
||||
constant_type [constant_code] = type_code;
|
||||
++offset;
|
||||
if ((coin_data [offset] == coin_symbol) && (* coin_text [offset] == ',')) {
|
||||
if ((coin_data [offset] == coin_symbol) && (* coin_text [offset] == ')')) {
|
||||
break;
|
||||
} else if ((coin_data [offset] == coin_symbol) && (* coin_text [offset] == ',')) {
|
||||
constant_data [constant_code] = counter;
|
||||
++counter;
|
||||
++constant_code;
|
||||
@ -125,9 +136,9 @@ int main (void) {
|
||||
constant_data [constant_code] = number;
|
||||
counter = number + 1;
|
||||
++constant_code;
|
||||
} else kill ("Expected number:", offset);
|
||||
} else kill ("Expected = or ,:", offset);
|
||||
} else kill ("Expected either marker or close symbol: ", offset);
|
||||
} else kill ("Expected constant data number:", offset);
|
||||
} else kill ("Expected = or , or ) ", offset);
|
||||
} else kill ("Expected constant name marker: ", offset);
|
||||
}
|
||||
++type_code;
|
||||
} else kill ("Expected equal or open bracket symbol: ", offset);
|
||||
|
23
тест.срб
23
тест.срб
@ -49,3 +49,26 @@
|
||||
видимо_се
|
||||
врати 60
|
||||
крај
|
||||
|
||||
-----------------------------------------------
|
||||
|
||||
одреди слово = 1;
|
||||
одреди број = 4;
|
||||
|
||||
одреди описивач (
|
||||
улаз,
|
||||
излаз)
|
||||
|
||||
одреди системски_позив (
|
||||
читај = 0,
|
||||
пиши = 1,
|
||||
отвори = 2,
|
||||
затвори = 3,
|
||||
изађи = 60)
|
||||
|
||||
текст: слово = "Здраво свете!";
|
||||
дужина: број = 12;
|
||||
|
||||
главна_процедура ():
|
||||
изврши (пиши, излаз, #текст, дужина);
|
||||
врати;;
|
||||
|
Loading…
Reference in New Issue
Block a user