335 字
2 分钟
破译一段抽象代码
2024-02-19
无标签

某一天,我在某个群里发了如下代码:

༃ ༊ ༆ 60 ྅ ༒ ༖ ༀ ༕ ༿ ༽ ༀ ༊ ༇ 60 ༕ ༿ ༻ ༀ “文本A” ༕ ྅ ༗ ྈ ༿ ༻ ༀ “文本B” ༕ ྅ ༗ ༂ 0 ྅ ༗

已知这是C语言,缩进规范,并使用了stdio.h库,看起来很让人头疼。

找到main函数#

C语言必须要有main函数。

从第1行开始看,main函数里面不能直接出现60的,所以这不是main函数。

第2行开始就有缩进了,并且缩进最后有个0,可以猜测为return 0;所以大概率是int类型的main函数。

༃ ༊ ༆ 60; int main(){ ༽ (༊ ༇ 60){ ༻ (“文本A”); } ྈ{ ༻ (“文本B”); } return 0; }

破译结构性语句#

从第3行到第7行,能看到一处结构。

这一看就是判断结构,所以:

༃ ༊ ༆ 60; int main(){ if (༊ ༇ 60){ ༻ (“文本A”); }else{ ༻ (“文本B”); } return 0; }

破译其它语句#

首先,在main函数外面的语句也只有赋值了,stdio.h库的printf也是最简便的函数,所以:

༃ ༊ = 60; int main(){ if (༊ ༇ 60){ printf(“文本A”); }else{ printf(“文本B”); } return 0; }

无法破译的东西#

  • ༃:一个数据类型。

  • ༊:一个变量名。

  • ༇:一个判断运算符

破译一段抽象代码
https://pinpe.top/posts/old/破译一段抽象代码/
作者
Pinpe
发布于
2024-02-19
许可协议
CC BY-NC-SA 4.0