Hej!
Jag behöver hjälp med mitt lilla programmerings språk som jag håller på att utveckla
Funktioner:
variabler
cin
cout
exempel på hur ett program kan se ut:
kod:
blabla
{
variabel: svar
skriv.ut<hejsan vad heter du>
hämta.till svar
skriv.ut\<Hej \>svar;
}
Så har jag tänkt att det ska se utt
Här är koden jag har skapat hitintils
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
string kod;
string skrivut="skriv.ut";
string hamtatill="hämta.till";
string variabel="variabel";
string hej="<";
ifstream openfile("C:\\Dev-cpp\\hej.txt");
while(! openfile.eof())
{
getline(openfile,kod);
if(kod==skrivut)
{
cout<<"hej"; //Här vill jag att programmet bara ska skrva ut det som finns mellan < och >
//Hur gör jag?
}
else if(kod==variabel)
{
cout<<"blabla";
}
else if(kod==hamtatill)
{
cout<<"jippie";
}
}
openfile.close();
system("pause");
}
Om jag får hjälp med det så kanske jag kan lösa mina problem
Är det en kompilator för ditt språk du vill utveckla? Isåfall, ta en titt på lexx och yacc. Du måste nämligen parsa källkoden först, så som du börjat går inte.
Ja det är en kompilator jsg vill utveckla,
Är lexx och yacc gratis?
Det här låter säkert korkat parsa??
Om du vill ta fram ett eget programmeringsspråk så måste du definiera dess syntax. Dvs regler för hur språket ser ut. Sedan behöver du en kompilator som tolkar (eller parsar, från engelskans parse) källkod, skriven utifrån din syntax.