当前位置:首页 > 每日看点

为什么我觉得C/C++好简单?

卡卷网2年前 (2024-12-02)每日看点310

很有可能是你没有见过生产级别的代码,甚至可能还不知道去哪里看。github上面有chrome/mysql/unreal engine之类的一大堆优秀软件的代码,个个都是就几百万行以上,你去看看自己能看懂几行,然后再来说简单不简单。

如果看完之后还觉得简单,那几百万/年的工作就是闭着眼睛找了。

从很远的地方看珠峰,就一个小山坡,感觉要爬上它易如反掌。距离越近,才会觉得越难。

编程也一样,你觉得它简单的时候,其实是因为离真正的编程还很遥远。

C语言语法级别的难,第一次见到的时候一头雾水的是这个:

send(to, from, count) register short *to, *from; register count; { register n = (count + 7) / 8; switch (count % 8) { case 0: do { *to = *from++; case 7: *to = *from++; case 6: *to = *from++; case 5: *to = *from++; case 4: *to = *from++; case 3: *to = *from++; case 2: *to = *from++; case 1: *to = *from++; } while (--n > 0); } }

do while和switch嵌套,其实是一种古老的发明:

en.wikipedia.org/wiki/D

算法级别的难,举个例子,Quake 3中求反平方根的算法,没人解释基本看不懂:

float InvSqrt (float x){ float xhalf = 0.5f*x; int i = *(int*)&x; i = 0x5f3759df - (i>>1); x = *(float*)&i; x = x*(1.5f - xhalf*x*x); return x; }

C++级别的难比C更多,数不胜数,当年让我觉得C++强大无比的是这个:

assert((o-----o | ! ! ! ! ! ! ! o-----o ).area == ( o---------o | ! ! ! o---------o ).area );

它其实是使用了一个库,在这里:

Multi-Dimensional Analog Literals

编程其实是一种技术活,类似于绘画、雕刻、篆刻、制陶烧瓷之类的传统工艺,只是它的载体变成了计算机。学习过程是类似的,无论智商多高,都无法跳过大量的长时间的练习和采坑摸索,任何一个人都不可能在两个月内从编程新手变成高手。

随手一发,没想到那么多人看。评论区说题主说的是C/C++语言,不是逻辑。好吧,要说C++语言本身有多难那就更简单了。

考察C++掌握程度的资源非常多,例如这个,打开看看,很有可能第一题你就不会:

cppquiz.org/

可以关注这个人的推,他经常提一些C++挑战性的问题:

twitter.com/shafikyaghm

还有一些常见的C++黑话,主要是一些C++编程技巧,有些甚至是C++独有的:

en.wikibooks.org/wiki/M

第一个链接里面只有几百道题,我这么说吧,知乎上懂C++的人一定可以出一千道甚至是一万道C++的题目是才学2个月C++的人答不出来的,而即使对学20年C++的人,出一百道答不出来的也没多大难度。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/2603.html

分享给朋友:

相关文章

网易云音乐里有哪些打动你的评论?

1. “如果我被强奸了,有人说我会失去贞操。” “我怎么失去贞操了呢?” “我的贞操不在我的阴道里。” “失去贞操的是强奸犯,而不是被强奸的人。” 2. 但要记得那年海边的烟火,我们不拘一格 ,嘲笑过生活。 ………网易云热评《这样就很好》…

开发了个小程序,咋推广呢?

要是开发了个小程序,想推广的话,可以先从自己的朋友圈子下手,让亲戚朋友都帮忙转发宣传,这样能先有点人气。 然后去一些跟你的小程序相关的论坛、社区啥的,发帖子介绍介绍,吸引有兴趣的人。 还能找些网红、博主合作,要是他们觉得你的小程序不错,帮忙…

天涯论坛关闭后,除了知乎,大家都在逛什么?

天涯论坛关闭后,除了知乎,大家都在逛什么?

天涯神贴合集完整版,给大家整理好了! 那年大学,打开天涯,感觉打开了一片新天地,里面什么样的人都有,有大神也有蛇神,比某乎好太多了,可惜后面关了很多年前,天涯社区曾出现了不少深受欢迎的帖子,成功地预言了许多形势和事件。这些帖子因此被冠以“天…

到什么程度才叫精通 Linux?

我们医院有个大牛。 有一次,我的Linux电脑下载了Microsoft office 365 不能运行。于是买了2.5升装康师傅冰红茶找到大牛,让他帮忙解决。 大牛白了我一眼,让我把安装包发给他,只见他输入一个命令将安装包打开,整个屏幕都是…

你为什么讨厌抖音?

我就被抖音毁了。 现在被我媳妇从抖音里拯救出来了。 我为什么会这样说? 我媳妇硕士在读,我文化程度相对就比较低了。 大多数人看抖音其实就是为了一图一乐呵 刚开始我也是这样的,我是2017年在朋友的推荐下注册了抖音,刚开始那时候对抖音不太上瘾…

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

最主要原因是因为——贵! 看看我家里搭建的这一套吧。 目前我家中有5台常用的NAS,分别为群晖DS1522+、威联通TS-464C2、绿联DX4600 Pro 、极空间Z4S、威联通TS-AI642。个人认为,这其中的每台NAS都是时代…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。