语言之间的自动编译

时间:2012-01-18 22:06:03

标签: c++ python

编辑:解决了,谢谢大家!

我希望能够以简单的方式做的是从一种编程语言中获取用户输入,将其转换为另一种编程语言并自动编译。

例如(简化而不是我想要做的但是沿着类似的路线):

1)写一个python脚本,userData = raw_input(“blah blah blah,example,example”)

2)如果userData ==“blah blah blah,示例,示例”,则序列化为名为“example.cpp”的文本文件,并输入一些基于用户输入的预定数据(以C ++形式编写,但在python脚本中表示为一个字符串)。为简化起见,这个预定数据将被称为predefinedData。

3)预定数据的范围基本上是cout<< “这是与之前不同的信息”<< ENDL;

4)编译器(g ++ / gcc)自动编译,整个程序结构调用新创建的可执行文件。

如果有人可以帮助我指出我应该阅读的主题/主题,以便能够实现这一目标 - 如果有可能的话 - 那就太棒了。

编辑:我认为我犯了一个经典错误。为了不被指责要求别人为我做“家庭作业”我试图过于模糊,因此误导。感谢您到目前为止的回复,但也许现在我应该更具体一些。它不是特别python或c ++特定的,但我将在下面解释。我为之前不太明确而道歉。

我真正想要实现的目标非常简单。我想使用来自一种编程语言(python,c ++,java)的用户输入,并创建一个Lilypond脚本,它将自动编译并创建一个midi文件。

例如:

1)要求用户按字母顺序输入一系列注释:例如“C”然后是“E”,然后是“F”,依此类推。

2)这些“注释”由控制循环语句检查,并在Lilypond脚本中创建一个字符串并序列化为与其编译器兼容的文件(example.ly)

3)Lilypond编译器自动编译该文件并创建midi文件(example.midi)

4)在程序的后面,这个example.midi可以被调用并且由于这个创建过程而被回放。在创建之前它不会存在。

1 个答案:

答案 0 :(得分:5)

对我而言,您只想编写用于交互式创建lilypond文件的用户界面。

我不知道这与编译有什么关系。您的python脚本需要以lilypond表示法编写文件,然后您的脚本需要在该文件上调用lilypond(例如使用os.system)。您甚至可以跳过写入文件,只将输出传输到stdinlilypond也可以读取。