用C编译数据流?
Posted
技术标签:
【中文标题】用C编译数据流?【英文标题】:compile a stream of data in C? 【发布时间】:2011-09-30 12:41:10 【问题描述】:是否可以编译数据流而不是使用 gcc 编译 .c
文件?例如,是否可以直接编译代码,而不是将代码存储在任何xyz.c
文件中?
【问题讨论】:
如果没有提供文件,gcc 将不知道如何从流中创建目标文件,也不知道如何在源代码中引用函数。为什么不简单地将数据流式传输到文件中?另一种可能性是使用像 CINT 这样的解释器。 明白。不想把事情搞得这么复杂。不过谢谢:) 如果有人感兴趣,这也适用于 clang! 【参考方案1】:您可以创建一个文件,将代码流式传输到其中,然后创建另一个进程(即编译器),将文件作为参数提供给它。然后创建另一个进程(即链接器),它将为您创建一个 exe。最后,您可以将该 exe 作为新进程启动。 但是为什么呢?!:)
【讨论】:
我正在开发一个项目-在线 c 编译器。我只是想知道,与其实际保存文件然后编译它,是否可以编译和运行它而不将其保存在文件中。 :) @Kazekage 我爱罗:不,我不认为你可以。 @Armen:你可以...看到my answer(当然生成的二进制文件仍然保存为文件)【参考方案2】:This 可能会回答你的问题,尽管它很少有用。
【讨论】:
对不起,如果我不简单地写谢谢,但它太短了,所以想象一下我(每次)感谢你,也感谢你的反对:) 不用担心@Shin;你不需要感谢我(尽管我很感激)。下次您的答案只是一个链接时,将链接中的一些信息复制到 SO 本身:这样,读者无需单击链接即可看到答案的主要部分。如果他们想更深入地挖掘,可以单击链接并阅读其余部分。 感谢您的建议;我只是关心许可,现在读到这是带有署名的 cc-wiki,我想它与 rc 许可兼容。 只要您不过度复制/粘贴并清楚标明来源,我认为它属于“合理使用”规则。我刚才answered 一个基本上是源链接的问题:)【参考方案3】:使用 gcc 选项 -x
和 -
上面的单行命令由以下几部分组成:
echo -e '#include【讨论】:
以上是关于用C编译数据流?的主要内容,如果未能解决你的问题,请参考以下文章
数据结构高手,或者C语言告诉,看看哪里错了,编译不过呀,显示有很多错误
C语言写的链表。明明没有错误,为啥编译器还会报错,?而且还爆出100+的错误,求解。
C语言中怎样实现打印宏?(例如#define BBBBBBB 100000,然后输入为100000的时候打印出BBBBBB。