看板 C_and_CPP 關於我們 聯絡資訊
不好意思 我是一個新手關於寫程式也是新手 我的作業系統是UBUNTU並不是因為我喜歡用LINUX而是因為我的需求是文書而已 沒要玩遊戲所以用LINUX可以避免掉很多不必要的麻煩 扯遠了 我有幾個問題要問 首先第一個問題是 我想學寫C++ 於是我借來了C++ PRIMER 4/E 還C++程式藝術設計 5 由於爬文後發現大家比較推前者 於是我開始了學習之路 我才剛翻沒幾頁就碰到了第一個問題 我在終端機下是使用VIM來寫程式碼 但是副檔名到底要取.cc .C .cpp那個才對? 我照個書中的範例prog1 int main() { return 0; } 之後用g++ prog1.cc 然後在終端機上打/.a.out 接著是 echo $? 這裡有幾個小問題 問題1:我再終端機底下用g++那是不是代表我編譯了prog1了呢? 再來是echo $?這是什麼意思? 後來下面的練習要我把返回0改成-1 我改了之後也沒有顯示任何錯誤 一樣echo $0 之後終端機還是顯示0 然後我想沒想太多繼續接著看1.2章輸入與輸出 我跟著打了範例2 #include <iostream> int main() { std::cout<< "Enter two number:" << std ::end1; int v1 v2 std::cout<< "The sum of"<< v1 <<" and " <<v2 << "is"<< v1+v2 << std::end1; return; } 之後我的終端機執行結果為下 ylon7@nylon7-desktop:~/文件$ vim book.C nylon7@nylon7-desktop:~/文件$ g++ book.C book.C: In function 「int main()」: book.C:4: 錯誤: 「end1」 不是 「std」 的成員 book.C:5: 錯誤: expected initializer before 「v2」 book.C:8: 錯誤: 在回傳 「int」 的函式中,回傳敘述不帶回傳值 nylon7@nylon7-desktop:~/文件$ cd 文件 bash: cd: 文件: 沒有此一檔案或目錄 nylon7@nylon7-desktop:~/文件$ ls book.C nylon7@nylon7-desktop:~/文件$ mv book.C book.cc nylon7@nylon7-desktop:~/文件$ ls book.cc nylon7@nylon7-desktop:~/文件$ g++ book.cc book.cc: In function 「int main()」: book.cc:4: 錯誤: 「end1」 不是 「std」 的成員 book.cc:5: 錯誤: expected initializer before 「v2」 book.cc:8: 錯誤: 在回傳 「int」 的函式中,回傳敘述不帶回傳值 nylon7@nylon7-desktop:~/文件$ vim book.C nylon7@nylon7-desktop:~/文件$ ls book.C book.cc nylon7@nylon7-desktop:~/文件$ rm -r book.C nylon7@nylon7-desktop:~/文件$ vim book.cc nylon7@nylon7-desktop:~/文件$ g++ book.cc book.cc:2:1: 錯誤: 整數常數的「int」字尾無效 book.cc:2: 錯誤: expected unqualified-id before numeric constant 請問各位大大我這中間到底出了什麼問題?? 不好意思麻煩各位了 -- 林語堂:「中國就有這麼一群奇怪的人,本身是最底階層, 利益每天都在被損害,卻具有統治階級的意識, 在動物世界裡找這麼弱智的東西都幾乎不可能,」 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.254.35.138
ilway25:endl 不是 1 .. 07/09 21:18
ckclark:int v1,v2; 07/09 21:20
e12518166339:是L不是壹阿@@? 07/09 21:22
MOONRAKER:沒有using namespace std; 你的版本有點舊了 07/09 21:27
MOONRAKER:除了看大家推薦什麼書以外 也要注意書的年份好ㄅㄟ 07/09 21:27
e12518166339:參照1F跟2F大大的改正我編譯成功了但出現了另個問題 07/09 21:29
e12518166339:Enter two number: 07/09 21:30
e12518166339:The sum of134514745 and -1077896968is-943382223 07/09 21:31
e12518166339:我沒有辦法輸入數字就連續跳2行出來了.......... 07/09 21:31
e12518166339:4F的大大...這本事2008/1月初板的@@ 07/09 21:32
windincloud:怎沒有人先跟他說要多下-Wall看錯誤訊息呀? 07/09 21:33
e12518166339:W大那個-WALL是在終端機下嗎? 07/09 21:36
judo1127:cout輸出 要輸入用cin吧...加油多看熟!! 07/09 21:41
zlw:原來你打成1沒有打小寫L,用細明體很真難看出來 07/09 21:48
typeotoco:建議加看一本 beginning Linux programming 4e 前幾章 07/09 21:54
zlw:裝個codeblocks來寫程式會比較好,直接用gdb還蠻難上手的 07/09 21:58
zlw:剛翻了一下C++ Primer裡面好像沒教你用debugger,但其實很重要 07/09 21:59
e12518166339:感謝各位大大...後來發現少打一行 07/09 22:03
e12518166339:std::cin >> v1 >> v2; 07/09 22:04
MOONRAKER:08/01的書裡面還沒有using namespace std?你開玩笑嗎? 07/09 22:04
e12518166339:因為太心急了所以沒仔細看 07/09 22:04
e12518166339:看了快2小時才看7頁= =感謝各位大大我會多用點心 07/09 22:05
e12518166339:我說真的= =沒有騙人...我特地翻到前面去看出版日 07/09 22:05
stonehomelaa:C++ PRIMER 4/E 是最新的版本耶 07/09 23:12
stonehomelaa:很顯然的你看錯書了,那本不是給寫程式的新手看的 07/09 23:13
weiyucsie:MOONRAKER 裡面沒寫using namespace std;有問題嗎? 07/09 23:20
weiyucsie:不是都有加std:: 了嗎? 07/09 23:20
milkdragon:XDDD 推樓上 07/10 03:13
MOONRAKER:好啦!我弄錯了 07/10 10:11