Re: [問題] code blocks 和 include <--眼殘

看板C_and_CPP作者 (-858993460)時間14年前 (2011/04/15 15:49), 編輯推噓3(301)
留言4則, 4人參與, 最新討論串2/2 (看更多)
離個題回推文... ※ 引述《shiengchyi (上班族之朝九晚六?!)》之銘言: : → james732:寫程式真的要頭腦清楚,要不然很容易發生悲劇 04/15 12:04 : → james732:我做過把 rm -rf xxx.o 打成 rm -rf xxx.c ... 04/15 12:04 : 推 shec1213:樓上...我也有學長做了 gcc xxx.c -o xxx.c 然後崩潰了 04/15 14:05 : → buganini:請愛用vcs啊.. 04/15 15:21 : → buganini:還有Makefile 04/15 15:21 Makefile 沒寫好也會有一樣的悲劇的... 以下是真實案例: 這學期當了 compiler 的助教 作業一是 scanner 的程式作業 因為學生人數眾多 規定了要有特定的 Makefile target 以便編譯執行 這是某個學生的 Makefile 中編譯出執行檔的 target: hw1: hw1.c hw1.l flex hw1.l gcc -o hw1 hw1.c lex.yy.c 另外他交上來的 source 就是 hw1.c 和 hw1.l 看起來一切都沒問題 但是改的時候一 make 就出事了 噴了一堆 link error 仔細看了 make 的輸出才發現事情是這樣的: 他交上來的檔案裡 hw1.c 的最後修改時間比 hw1.l 早兩秒 因此 make 看到了同檔名的 .c 比 .l 還"舊" 觸發了 .c.l 的預設規則 就把他的 hw1.c 給蓋掉了 XD 然後接著才執行這個 target 所以再 flex 一次 等於 hw1.c 和 lex.yy.c 兩個檔案內容相同 於是就噴了一大票重覆定義的 link error... 後來是重新解開他上繳的檔案 touch 一下再 make 就什麼事都沒有了 我個人比較好奇的是竟然寫作過程中一次都沒發生過這種悲劇 這學生也頗厲害的 XD -- ˊ_▂▃▄▂_ˋ. ◣          ▅▅ ▅▅ ι●╮   ./◤_▂▃▄▂_◥ \'▊   HARUHI █████ <■┘   ◤◤◥█◥◥█Δ   ISM    By-gamejye ¢|\   ▌▌ζ(▏●‵◥′●)Ψ ▏           █    ⊿Δ    /|▋ |\ ▎         ハルヒ主義      ▄█ ◥◥|◣ ‵′ ◢/'◢◢S.O.S 世界をいに盛り上げるための宮ハルヒの    -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.131

04/15 16:12, , 1F
XD
04/15 16:12, 1F

04/16 15:04, , 2F
XD
04/16 15:04, 2F

04/19 02:37, , 3F
那個學生可是卷一了很多學期XD
04/19 02:37, 3F

04/19 23:51, , 4F
XD
04/19 23:51, 4F
文章代碼(AID): #1Df_X_2w (C_and_CPP)
文章代碼(AID): #1Df_X_2w (C_and_CPP)