C代码编辑器求教

Felven 2009-07-03 06:51:42
我想做一个C代码编辑器,和Notepad差不多,也可以理解为文本编辑器,不需要实现编译功能,具有以下功能:
基本功能:

可以编辑C语言源程序
支持对源程序的高亮显示
支持代码重排版
支持代码折叠
支持当前文件函数列表和跳转
成对括号、语句块标识
支持通过外部编译器编译并运行程序(可选)



功能说明:

高亮:能够通过高亮度显示出C语言的关键字等不同的语法成分。关键字一种颜色,常量/变量等一种颜色。
重排版:在编辑程序后,通过一个命令将所有的代码重新排版,可以使用固定风格,也可以让用户选择喜欢的风格。
代码折叠:可以以语句块为单位对代码进行隐藏,譬如在某个语句块中按 c-h,则语句块的内容隐藏,并在该语句块位置显示一行提示,在此处再按 c-h,则显示语句块的内容。
函数列表:在编辑器的左侧可以显示当前文件的函数列表,当选择列表中的函数时,则自动跳转到该函数中。
括号、语句块标识:当光标移动到某个 () 或 {} 符号上时,则能用高亮的方式将括号或语句块的另一端显示出来。
编译运行程序:可以使用外部编译器如 GCC、DJGPP 等编译、链接当前的源程序,并显示编译错误。如果编译正确,则可以执行该程序。


难点
此题目的难点包括以下几个方面:

字符界面下的应用程序界面设计(若使用 Linux 可直接使用 ncurses 以降低难度)
文本文件在内存中存储的数据结构
C语言源代码的分析,程序修改时对源代码的重新分析
源代码重排版的算法
源代码折叠的渲染
调用外部编译程序

望高手指点,是什么数据结构,谢谢
...全文
303 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Felven 2011-08-29
  • 打赏
  • 举报
回复
我们小学期做完了
LIDENG_CS 2011-08-24
  • 打赏
  • 举报
回复
这个我们花了一个暑假做的!数据结构可以用 链表+vector实现…………
lingling1989r 2009-07-13
  • 打赏
  • 举报
回复
眼熟的帖。
网上有那个editplus源码,你找个下下。
messi182007 2009-07-12
  • 打赏
  • 举报
回复
代码折叠学习一下treeview吧
q917346 2009-07-12
  • 打赏
  • 举报
回复
代码折叠怎么搞得,又哪位大侠出来说说吗 ?
lasttimes 2009-07-11
  • 打赏
  • 举报
回复
C语言源代码的分析

要用到编译原理。

主要是这一条麻烦。其他的相比下都是小case。

WizardOz 2009-07-09
  • 打赏
  • 举报
回复
这个东西很牛B
qoozone1234 2009-07-07
  • 打赏
  • 举报
回复
楼主,看看编译原理就可以了。把词法分析和语法分析搞明白即可,后面的汇编代码生成和优化就不用搞了。
  • 打赏
  • 举报
回复
什么数据结构

必须买本关于这方面的带代码的书好好补补了
wo554006164 2009-07-06
  • 打赏
  • 举报
回复
楼上的又来打广告了.封ID.
不会.帮顶

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧