電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 26|回復(fù): 0
收起左側(cè)

要不然,我們就承認php是世界上最好的編程語言吧!

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
匿名  發(fā)表于 前天 11:59 回帖獎勵 |倒序瀏覽 |閱讀模式
原標(biāo)題:要不然,我們就承認php是世界上最好的編程語言吧?(?????)?
但是題目中不能有特殊字符,所以改成了驚嘆。
昨日一個尋常周中下午,陽光透過稀薄云層不似夏日熾熱濃烈?guī)е鴰追智謇渑c蒼白。光線冷冽鋪展大地映的樹影斑駁,淡漠而寧靜。人在這微弱的日光里似乎也被注入了一種慵懶的氣息,身體像是被冬日的倦意包裹每一個動作都變得緩慢而遲緩。這樣的午后原本適合窩在一角,手捧一杯溫?zé)岬牟,或是蜷縮在柔軟的沙發(fā)上,沉浸在一本好書的世界里,任由白日夢將自己輕輕包圍。

我的意思是,昨天午后小憩起來之后很困,腦子轉(zhuǎn)不動就很想去摸一會魚,當(dāng)然大家都是經(jīng)過九年制義務(wù)教育的好學(xué)生自是不用說的那么直白。
低效工作不如歇歇腦子,就癱坐在椅子上刷一會社區(qū)。社區(qū)推薦也是知道最近在苦惱什么于是直勾勾的就推了一個問題:《為什么擁有C語言基礎(chǔ)的人,依然學(xué)不會C++?》看似是上班摸魚實則是為了更好的工作而暗中努力學(xué)習(xí)呀,精神實在是值得鼓勵。
這么好的問題當(dāng)然要看看大家怎么說,瀏覽了一些回答感覺心情舒暢了很多,原來學(xué)不會C++也不是我自己的問題。然后,很突然啊,就在評論區(qū)(評論區(qū)已爆改吐槽區(qū))看到了沒有閃開的一段代碼:

  • #define mul(a, b) a * b
    int main(void){  int a;  mul(int, p = &) a;  mul(if(1), p) = 5;  int printf(const char*,...);  printf("%d", 0[p]);}腦海中閃現(xiàn)精靈副將馬國成,那種腦子嗡嗡的不知道大家有沒有體會,就是想用“C語言”或者“C++”親切問候編碼者但是礙于文雅不好說出口,大腦和道德作斗爭的感覺:

    當(dāng)然這里應(yīng)用了夸張的修辭手法,實際上沒這么激動,倒是覺得很有意思,畢竟這兩天剛把指針和引用分清。這下整個人一點也不困了,正如前同事所說“上班時候做啥都比上班有意思,包括肉眼掃描條形碼”。開始逐行翻譯這段代碼(C++翻譯C++就很離譜),些許風(fēng)霜之后譯碼成功:
  • #include "stdio.h" // 里面定義了int printf(const char*,...),函數(shù)原型就長這樣#define mul(a, b) a * b //上來先震驚一手int sc_main(int argc, char* argv[]) {  int a; // 珍惜吧,這一段里唯一正常的一行代碼  mul(int, p = &) a; //int *p = &a; 指向int類型的指針p指向了int a的地址  mul(if(1), p) = 5; //if(1) *p = 5; if(1)必定滿足, *p表示p指向的空間,值更新為5  printf("%d
    ", 0[p]); //0[p]即*(p+0),所以這里是  printf("%d", *p)即打印p指向地址里存的值,5  printf("%d
    ", a); //加上這句也行,反正都打印出來5  return 0; //確實是有大病的一段代碼啊哈哈}翻譯完那必然是得驗證下,嚴謹?shù)膶嵺`派是不能接受沒有跑起來的一段代碼。在虛擬機里一通敲,run一下果然翻譯的沒有問題:

    人進過了左腦翻譯右腦反駁的歷程終于理解了之后,就想看看大模型能不能理解。于是用這段代碼去考考通意,畢竟最近gpt小崩了下這段時間通意在寫代碼上出力最多,也應(yīng)該讓他嘗嘗細糠。結(jié)果別說,雖然通意上來就覺得代碼是錯的跑不起來(也對,誰看到這代碼能覺得對呢),但還是努力改了一版基本符合原意的正確版本出來:

    可以的,以后C++的代碼還讓你寫。
    最后我又跑去和HY分享了一下這段代碼,收獲了若干評價:


    我覺得說的在理,畢竟在代碼的優(yōu)秀程度上,也就php能壓C++一頭了,總不能讓大家投JavaScript吧那也不是編程語言。以后如果有機會做ESL面試官我一定拿這段代碼考他!
    最后HY為了說明C語言/C++能寫出多奇葩的代碼,又推薦了驚喜小彩蛋:


    點開看了里面列舉的幾個獲獎代碼,怎么講呢,深得我意啊。





    還有獲獎作品供大家運行下,比如計算圓周率:
  • #define _ -F int F=00,OO=00;main(){F_OO();printf("%1.3f
    ",4.*-F/OO/OO);}F_OO() {             _-_-_-_        _-_-_-_-_-_-_-_-_     _-_-_-_-_-_-_-_-_-_-_-_   _-_-_-_-_-_-_-_-_-_-_-_-_-_  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_   _-_-_-_-_-_-_-_-_-_-_-_-_-_     _-_-_-_-_-_-_-_-_-_-_-_         _-_-_-_-_-_-_-_             _-_-_-_ }這跟那個畫符的編程語言Brainf和諧k有啥區(qū)別呢,人家也能畫的這么好看來輸出Hello World:
  • ++++++++++[>+++++++>++++++++++>+++>++.>+.+++++++ ..+++.>++..+++.------.--------.>+.行就寫這么多吧,最后高呼一句“PHP是這個世界上最好的編程語言!

    系列文章入口——
    【芯片設(shè)計】SoC 101(一):緒論
    【芯片設(shè)計】FIFO漫談(零)從無處不在的FIFO開始說起
    【芯片設(shè)計】計算機體系結(jié)構(gòu)(一)虛擬內(nèi)存
    【芯片設(shè)計】深入理解AMBA總線(零)緒論
    【芯片設(shè)計】握手協(xié)議的介紹與時序說明
    【芯片設(shè)計】復(fù)位那些小事 —— 復(fù)位消抖
    【芯片設(shè)計】快速入門數(shù)字芯片設(shè)計(一)Introduction
    【芯片驗證】UVM源碼計劃(零)下定決心讀源碼前的自測環(huán)節(jié)
    【芯片設(shè)計】異步電路碎碎念(一) 到底什么是異步電路
    【芯片設(shè)計】從RTL到GDS(一):Introduction
    其他文章鏈接——
    【芯片驗證】sva_assertion: 15道助力飛升的斷言練習(xí)
    【芯片驗證】可能是RTL定向驗證的巔峰之作
    【芯片驗證】RTL仿真中X態(tài)行為的傳播 —— 從xprop說起
    【芯片驗證】年輕人的第一個systemVerilog驗證環(huán)境全工程與解析
    【芯片設(shè)計】verilog中有符號數(shù)和無符號數(shù)的本質(zhì)探究
    【芯片設(shè)計】論RTL中always語法的消失術(shù)
    【芯片設(shè)計】代碼即注釋,注釋即代碼
    【芯片設(shè)計】700行代碼的risc處理器你確實不能要求太多了
    入職芯片開發(fā)部門后,每天摸魚之外的時間我們要做些什么呢
    如何計算系統(tǒng)的outstanding 和 burst length?
    芯片搬磚日!け扑缽娖劝Y的關(guān)鍵詞不對齊事件
    熟人社會里,一群沒有社會價值的局外人
  • 本帖子中包含更多資源

    您需要 登錄 才可以下載或查看,沒有賬號?立即注冊

    x
    回復(fù)

    使用道具

    發(fā)表回復(fù)

    您需要登錄后才可以回帖 登錄 | 立即注冊

    本版積分規(guī)則


    聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表