如何将tkinter文本传递给flex

时间:2013-11-23 21:40:51

标签: bison

我有一个基于c-bison-flex的工作项目。我已经开始为它构建一个python-tkinter环境,但是我陷入了陷阱。 我打算将tkinter编辑窗口的内容复制到'c'应用程序的缓冲区。文本传递没有问题,我可以到达'c'函数 - 但缓冲区地址是未知的。缓冲区由flex'动态'分配。 有什么想法解决它吗? (也许是无关紧要的,但系统是Ubuntu。)

1 个答案:

答案 0 :(得分:1)

flex提供了一个用于在不同输入缓冲区之间切换的接口,包括指定具有函数yy_scan_stringyy_scan_bytes的内存输入缓冲区的可能性(参见Flex manual有关详情。)

正如手册所说,这些例程会复制字符串,因此您仍然不知道flex中字符串的地址。但它确实意味着您在创建flex缓冲区后不需要保留字符串,这在您与脚本系统连接时很方便。