小编gue*_*est的帖子

是否有可能编写一个程序,利用"序列生成函数"打印自己的源代码

是否有可能编写一个程序,利用"序列生成函数"打印自己的源代码?

我所谓的序列生成函数只是一个从特定区间返回值的函数(即可打印的ascii-charecters(32-126)).现在的观点是,这个生成的序列应该是程序自己的源代码.如你所见,实现一个返回任意序列的函数实际上是微不足道的,但由于返回的序列必须包含函数本身的实现,因此这是一项非常重要的任务.

这是这样一个程序(如何它对应的输出)可能看起来像

#include <stdio.h>

int fun(int x) {
    ins1;
    ins2;
    ins3;
    .
    .
    .
    return y;
}

int main(void) {
    int i;
    for ( i=0; i<size of the program; i++ ) {
        printf("%c", fun(i));
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我个人认为这是不可能的,但由于我不太了解潜在的问题,我在这里发表了我的想法.我真的很期待听到一些意见!

c math complexity-theory quine

9
推荐指数
1
解决办法
1294
查看次数

标签 统计

c ×1

complexity-theory ×1

math ×1

quine ×1