curses的編譯參數

newhuman163 2004-12-3 07:29
初學者:我的第一個curses程序爲何無法編譯!

我剛學習curses編程,不過開始就遇到了一些困難!我編寫了很簡單的程序(curse.c),程序代碼如下

        #include <stdio.h>;
        #include <curses.h>;

        int main( int argc ,char **argv)
        {
                initscr();
                box(stdscr,ACS_VLINE,ACS_HLINE);
                mvaddstr(11,30,"hello world");
                refresh();
                getch();
                endwin();
                return 0;

newhuman163 2004-12-3 07:54
初學者:我的第一個curses程序爲何無法編譯!

出現的錯誤是:

在redhat 9.0 linux 環境下,我輸入 gcc -o curse curse.c
  可是出現了很多錯誤,基本上是說 undefined reference to initscr()等函數,我已經包含了curses.h
  頭文件了啊!爲什麼還會出現這樣錯誤呢!
  是不是應該這樣編譯curses程序啊?請大蝦指教!

flw 2004-12-3 08:03
初學者:我的第一個curses程序爲何無法編譯!

靠!
爲什麼會有這麼多的人認爲包含了頭文件就沒事了呢?

gcc -o curse curse.c -lncurses

newhuman163 2004-12-3 08:07
初學者:我的第一個curses程序爲何無法編譯!

   謝謝斑竹的幫助!初學的,請多多指教;)
   

flw 2004-12-3 08:12
初學者:我的第一個curses程序爲何無法編譯!

你真正需要的不是頭文件,而是函數庫,明白嗎?
頭文件只不過是“買回來的熱水器的說明書”,
你光拿着說明書,不去找熱水器,能燒開水嗎?

RH9 中的 curses.h 就是 libncurses.a 這個熱水器的說明書,
明白這個道理了嗎?

gcc 的 -lncurses 這個意思就是說,你要把 libncurses.a 這個熱水器插到電源上!

我希望,
你在下次學另外一種技術的時候,
不要再這麼問:
[quote]我已經包含了 xxxx.h,爲什麼還是報錯呢?[/quote]
而是應該這麼問:
[quote]我要 do it,那麼除了包含 xxxx.h 還要鏈接哪個庫文件呢?[/quote]
或者
[quote] xxxx.h 對應的是哪個庫文件呢?[/quote]

yunin 2004-12-3 08:19
初學者:我的第一個curses程序爲何無法編譯!

比喻很精彩,彩到出紅喲。

newhuman163 2004-12-3 08:20
初學者:我的第一個curses程序爲何無法編譯!

   正是佩服斑竹的精闢的說明!
   真想和斑竹交個朋友!如國斑竹不願意的話,請告訴你的郵箱或則QQ!
   有機會一起合作!


   qq:45517999
         MSN: [email protected]
         E_mail: [email protected]

albcamus 2004-12-3 08:24
初學者:我的第一個curses程序爲何無法編譯!

哈哈,flw應該寫本書,就寫這樣的話,整不好成中國的Stevens、Kernighan也不一定:)

aero 2004-12-3 08:26
初學者:我的第一個curses程序爲何無法編譯!

外國人看不懂,以爲是《中國家用電器說明書大全》呢。

twen345 2004-12-3 08:42
初學者:我的第一個curses程序爲何無法編譯!

精彩的比喻!

yuxh 2004-12-3 08:44
初學者:我的第一個curses程序爲何無法編譯!

很多次看到版主的精彩比喻!
其實表達能力與寫程序有很大的關係。
寫程序無非就是把自己的想法用機器可以識別的語言表達出來而已,有的時候對一個項目的理解比掌握多少高深的技術要重要得多。。。

flw 2004-12-3 08:50
初學者:我的第一個curses程序爲何無法編譯!

[quote][i]原帖由 "yuxh"]寫程序無非就是把自己的想法用機器可以識別的語言表達出來而已[/quote 發表:[/i]

握手握手!
但是在“把自己的想法用機器可以識別的語言表達出來”,
得先能夠“讀懂計算機的語言”才行。

所以我以前的簽名就說:
[quote]第一層境界:我的思維要象計算機一樣。
第二層境界:計算機要能夠按照我的想法去做事。[/quote]

但是,這裏邊有個“大前提”,
那就是我現在的簽名:
[quote]我的問題到底是什麼?我到底想要幹什麼?[/quote]

newhuman163 2004-12-3 08:50
初學者:我的第一個curses程序爲何無法編譯!

   討論的人真多;)
   areo 也在線啊!還記得我嗎?;)

aero 2004-12-3 09:17
初學者:我的第一個curses程序爲何無法編譯!

sry,記不清楚了哈。

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章