陈尚涵 发表于 2023-8-14 13:05:38

宏定义写的船新的语言

众所周知,使用宏定义名称编译时相当于直接将名称替换成值,那么咱们是不是把代码里充满宏定义呢{:10_256:}
比如,这里需要实现,输入一个整数,然后把这个整数自增1,然后再输出,正常c++代码:
#include <iostream>
using namespace std;
int main(){
        int x;
        cin >> x;
        x = x + 1;
        cout << x;
        return 0;
}
咱们只需要写一堆简单的宏定义,就能替换掉所有的代码,宏定义代码:
#include <iostream>
#define num int
#define flt double
#define plu +
#define min -
#define mut *
#define div /
#define rem %
#define is =
#define begin int main(){
#define end return 0;}
#define print cout
#define input cin
#define pnext <<
#define inext >>
#define endl ;
using namespace std;
然后把这个宏定义写进一个文件,咱们写代码的时候只要(要使用双引号,因为这样才能引入同一个目录下的文件)
#include "宏定义"
就可以直接开始写了,我给这个起了个名字,因为这就已经不像c++了,是一个船新的语言,并且用的都是英文,所以起名为nl_e(new language_english)
好的,那么我们就可以酱紫写代码了:
#include "nl_e"
begin
num x endl
input inext x endl
x is x plu 1 endl
print pnext x endl
end
这还是你认识的c++吗,能通过编译,并且结果正常
这还不够,可以通过修改宏定义让代码抽象起来
比如说,全用小写字母,因为不是人类能看懂的,所以起名为nl_nfh(new language_not for human)
来看看
#include <iostream>
#define a int
#define b double
#define c +
#define d -
#define e *
#define f /
#define g %
#define h =
#define i int main(){
#define j return 0;}
#define k cout
#define l cin
#define m <<
#define n >>
#define o ;
using namespace std;
来看看代码
#include "nl_nfh"
i
a x o
l n x o
x h x c 1 o
k m x o
j
恐怖的抽象程度
两个都打包在一个zip里了

仅供娱乐{:10_256:}
觉得有意思请评分{:10_297:}
@学习编程中的Ben @高山 @zhangjinxuan @liuhongrun2022 @tommyyu

陈尚涵 发表于 2023-8-14 13:08:24

仅供娱乐,认真你就输了{:10_256:}{:10_256:}{:10_256:}

tommyyu 发表于 2023-8-14 13:10:22

我有一个想法{:10_256:}
定义一个全局的 01 main 数组,继承打纸条{:10_256:}

陈尚涵 发表于 2023-8-14 13:12:17

tommyyu 发表于 2023-8-14 13:10
我有一个想法
定义一个全局的 01 main 数组,继承打纸条

{:10_257:}有点看不懂

tommyyu 发表于 2023-8-14 13:13:16

陈尚涵 发表于 2023-8-14 13:12
有点看不懂

c++ 编译器会把这个 main 数组当成函数,然后用机器语言(大概是吧?)编译{:10_256:}

陈尚涵 发表于 2023-8-14 13:15:28

tommyyu 发表于 2023-8-14 13:13
c++ 编译器会把这个 main 数组当成函数,然后用机器语言(大概是吧?)编译

这可行吗{:10_257:}

歌者文明清理员 发表于 2023-8-14 13:16:17

说,你是不是看到过这个视频 -> https://www.bilibili.com/video/BV1g44y1c7az/?spm_id_from=333.880.my_history.page.click

陈尚涵 发表于 2023-8-14 13:18:09

歌者文明清理员 发表于 2023-8-14 13:16
说,你是不是看到过这个视频 -> https://www.bilibili.com/video/BV1g44y1c7az/?spm_id_from=333.880.my_hi ...

在,摄,拆,懂?{:10_334:}

歌者文明清理员 发表于 2023-8-14 13:18:49

陈尚涵 发表于 2023-8-14 13:18
在,摄,拆,懂?

tommyyu 发表于 2023-8-14 13:19:09

陈尚涵 发表于 2023-8-14 13:15
这可行吗

貌似可行,但是我捣鼓不出来。这个代码不会报错:#include <iostream>
using namespace std;
int main = {1, 1, 1, 1, 1};证明了这种方法的可行性

歌者文明清理员 发表于 2023-8-14 13:21:13

陈尚涵 发表于 2023-8-14 13:18
在,摄,拆,懂?

陈尚涵 发表于 2023-8-14 13:22:11

歌者文明清理员 发表于 2023-8-14 13:21


{:10_250:}你才知道

歌者文明清理员 发表于 2023-8-14 13:23:48

陈尚涵 发表于 2023-8-14 13:22
你才知道

快快交上1145鱼币,不然我就曝光你的浏览器历史记录{:10_334:}

歌者文明清理员 发表于 2023-8-14 13:24:33

陈尚涵 发表于 2023-8-14 13:22
你才知道

btw,我今天也看过这个视频,因为它今天上主页了

陈尚涵 发表于 2023-8-14 13:24:39

歌者文明清理员 发表于 2023-8-14 13:23
快快交上1145鱼币,不然我就曝光你的浏览器历史记录

{:10_277:}

tommyyu 发表于 2023-8-14 13:24:52

歌者文明清理员 发表于 2023-8-14 13:24
btw,我今天也看过这个视频,因为它今天上主页了

俺也一样{:10_256:}

tommyyu 发表于 2023-8-14 13:25:37

歌者文明清理员 发表于 2023-8-14 13:24
btw,我今天也看过这个视频,因为它今天上主页了

我记得之前有人用 python 实现过 c++ 的语法,我找一下

歌者文明清理员 发表于 2023-8-14 13:26:40

tommyyu 发表于 2023-8-14 13:25
我记得之前有人用 python 实现过 c++ 的语法,我找一下

我做不到 cout 和cin……

歌者文明清理员 发表于 2023-8-14 13:27:25

{:10_257:}突然发现自从有了gpt后大家都开始吹水了

tommyyu 发表于 2023-8-14 13:29:58

歌者文明清理员 发表于 2023-8-14 13:26
我做不到 cout 和cin……

https://www.bilibili.com/video/BV1a84y1t7c5/?spm_id_from=333.788
页: [1] 2 3 4
查看完整版本: 宏定义写的船新的语言