是否有用于绘制图片和制作.jpg文件的C库



我认为这个问题看起来可能非常愚蠢和不必要,但我真的不知道如何解决这个问题。

我需要通过使用c。

编写的一些测试代码进行呼叫图。

我制作了lex文件和yacc文件以解析语法。

现在,我可以制作一个可执行文件,以用.l和.y文件编写的C语言编写文件。

,但是现在我必须根据输入文件

的可执行文件进行JPG文件和文本文件

JPG文件和文本文件需要在输入(调用图(中显示函数的调用关系

所以假设有文件

lex.l yacc.y test.c

我需要制作一个可执行文件。

lex lex.l命令make lex.yy.c

yacc -d yacc.y命令make y.tab.cy.tab.h(lex文件的标题(

现在cc y.tab.c lex.yy.c Cammand将制作一个可执行文件a.out

因此,我必须根据a.out < test.c命令

进行JPG文件(.jpg(和文本文件(.txt(

我知道如何使用fprintf((函数制作文本文件。

但是JPG文件是我真的不知道的。

我不能使用其他一些工具

我只能在LEX文件和YACC文件

中输入一些C代码

所以我认为我可能会使用一些C库进行此操作

有什么办法可以做到吗?

谢谢

我需要通过使用c。

编写的一些测试代码进行呼叫图。

您可以 fork 一些其他处理图纸并使用过程间通信设施(这可能是最简单的方法(,因为它符合UNIX哲学(。考虑运行一些GraphViz或GNUPLOT过程。您需要Linux系统编程的技能(要明智地使用Syscalls(2(中列出的几个系统调用(,因此您应该阅读ALP或更新的内容。

所以我必须根据a.out < test.c命令

进行JPG文件(.jpg(和文本文件(.txt(

不要命名您的程序a.out,2019年这很荒谬。了解如何调用海湾合作委员会。并学习使用程序参数(您可能需要使用解析程序参数设施(。您将以myprogram test.c调用您的程序,但请注意,您的shell (您用来运行程序的一个(将进行globing。

,您还可以使用一些GUI工具包(例如GTK或LIBSDL(来使程序进行一些GUI应用程序(以工具包提供的某些事件循环为中心(。如果您只想 output 一些图形,则可以考虑libcairo。

如果您具有Web编程技能,则可以考虑使用Web技术(例如SVG HTML5 画布(;如果要使程序使一些专业的Web服务器(例如,您的用户会浏览一些http://localhost:12345 URL(,请考虑使用http服务器库(例如libonion(。

如果您接受具有图纸的其他类型的文件,请考虑发射一些SVG或PDF文件。您也会找到图书馆。顺便说一句,SVG是您可以直接发射的文本格式。

终于,您可以找到许多处理JPEG文件的库,例如libjpeg。

ps。您确实应该在网络上找到在网络上找到一些小型现有免费软件项目(例如,在GitHub,Gitlab,SourceForge等上对您的目标进行精神,并研究其灵感的源代码。通过这样做,您将学到很多实用的东西,并且可以节省数小时的工作(因为您显然缺乏实用技能(。

btw,如果您的目标是找到一些现实生活中C程序的呼叫图,请考虑制作一些GCC插件。几周前,我做到了(在约800行C 代码中(,与我的Bismon研究项目有关一些无趣的演示。而且,如果您确实必须解析C代码,则需要解析其的预处理形式。因此,运行一些cpp预处理器以获取。

最新更新