zoukankan      html  css  js  c++  java
  • 打印自身源代码的程序

    无意当中看到了这样一个问题:

    任意选定一个语言写一个打印自身源代码的程序,这个程序不允许读取或者写其他文件的数据,程序必须是完全独立的。

    很有趣吧?我正在学习C语言,这个问题是我在查找其他资料时看到的,这激发了我的兴趣,我躺在床上想了很久,没有一点头绪,额,最后抱着认为不大可能实现的想法睡着了······

    回到正题,我在网上搜索了有关资料以后,知道了如何去写出这样的一个程序,原理是定义一个关于源代码自身的串string,然后加入把string改写成程序自身的算法编码,最后输出string。由于c语言中有个Printf(),实现这个代码就十分的方便,由于我还不会其他语言,所以只把c的代码贴下:

    #include <stdio.h>
    int main()
    {
    char *s = "#include <stdio.h>%cint main(){char *s = %c%s%c; printf( s, 10, 34, s, 34 ); return 0; }";
    printf( s, 10, 34, s, 34 ); return 0;
    }  

    需要注意的一点是,这个代码应该有指明打印的位置与打印多少。

  • 相关阅读:
    Bootstrap
    继承与多态
    面对对象与封装
    antd表格排序
    样式文本过长用...显示的时候,用弹框来显示文本(react为例)
    锚点
    树形结构的搜索,只显示搜索内容
    fetch不携带cookie
    antd 给select下拉框添加懒加载
    post方法下载文件
  • 原文地址:https://www.cnblogs.com/Sherlock-J/p/12926079.html
Copyright © 2011-2022 走看看