风马牛不相及?编程语言C | 指鹿为马
2020-10-22 19:57
阅读:7536
标签:成语, 指鹿为马, 计算机, 编程语言
金秋十月,吹点科技浪漫主义的文学之风,以活跃科学网的气氛。
编程语言C,是美国计算机科学家Dennis Ritchie发明的,常用于底层代码编写,仅比汇编语言ASM略显高级一些。家喻户晓的微软Windows操作系统,最初就是用C语言编写的。
C语言码农们都知道,他们经常不得不“指鹿为马”。
这话怎讲?请看下面两行代码片段:
double var = 1.0;
printf("ASCII value of 2nd byte in memory= %c\n", (char *)&var[1]);
咋的?明明是指向8字节长的浮点数,我偏偏要指鹿为马,说它是指向单字节流的指针,甚至可根据需要,随时随意cast成任何数据类型。
动机很简单,计算机的内存管理与数据结构很琐碎,用太高级的语言操作,真的很费机时,效率也低。
指针是C语言最核心的概念,内存寻址都要用到指针操作,CPU处理指针的算术偏移,效率比所有其它操作都高。
反正内存里都是数据,怎么解释怎么方便,是躺赢的不二法则。
另一厢,“指鹿为马”恰是中国古代的经典成语之一,乃心高气傲者的霸气侧漏;当权者最喜欢故意指鹿为马,常用于测试谁是忠心耿耿的追随者。
不服? 放马过来,我把它当鹿打趴,哈哈!
两厢都说清楚,大家就领悟了:“C语言”与“指鹿为马”,原来并不是那么风马牛不相及嘛!
最后留道语文课后作业:
成语“风马牛不相及”的正解为何?
欢迎有兴致者在评论区交作业。
参考文献:
转载本文请联系原作者获取授权,同时请注明本文来自魏焱明科学网博客。
链接地址:https://wap.sciencenet.cn/blog-2339914-1255379.html?mobile=1
收藏
当前推荐数:20
推荐到博客首页
网友评论5 条评论