[問題] pointer和switch結合的小問題

作者: tjltd2000 (xiaoni0426)   2017-11-23 22:57:46
開發平台(Platform): (Ex: Win10, Linux, ...)
win7
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
dev c++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
小弟在練習queue時遇到的問題,題目是建立一個queueu有各種不同的功能
主要就是可以輸入資料存到queue裡面,然後練習queue的各種函式
剛開始打完後一直有問題,debug很久後不小心被我發現,但其實不是很懂為什麼
所以標題也只是猜測而已
以下問題正式開始
原本我的pointer和malloc是打在code裡注解那,但無法run
要改到第二個註解備註那才可行
餵入的資料(Input):
預期的正確結果(Expected Output):
印出front,rear,和queue裡所有資料
錯誤結果(Wrong Output):
不論要印front,rear都只會印出最後輸入的數字
要印出queue裡所有資料會全部都是最後輸入的數字
程式碼(Code):(請善用置底文網頁, 記得排版)
https://ideone.com/O6l0bZ
補充說明(Supplement):
阿我知道我表達有點障礙,希望各位大大別介意
作者: galic (嘎利)   2017-11-23 23:39:00
91行!?
作者: KoenigseggG (地表最速)   2017-11-24 12:04:00
你用可以run的寫法,deQ也可以正確跑嗎?
作者: kingofsdtw (不能閒下來!!)   2017-11-24 19:05:00
case內宣告變數需要{}https://goo.gl/vY67Mx看人的coding sytle,在C++除非construct method我不太喜歡宣告在case裡面
作者: galic (嘎利)   2017-11-24 19:16:00
就91行錯了吼 誰管data在哪裡宣告
作者: kingofsdtw (不能閒下來!!)   2017-11-25 02:45:00
QQ~ 抱歉誤解回錯
作者: galic (嘎利)   2017-11-25 10:59:00
相信我 就是91行 改對再來討論
作者: caras   2017-11-25 13:13:00
91 行問題大了,超嚴重算是花式違反置底十三誡之第二誡
作者: Lipraxde (Lipraxde)   2017-11-25 15:22:00
65應該是"!="?
作者: steve1012 (steve)   2017-11-26 05:15:00
gdb 一步一步看自己試過了嗎?
作者: Ommm5566 (56天團)   2017-11-26 07:27:00
可是我讀取陣列外的記憶體位置也沒問題的
作者: galic (嘎利)   2017-11-26 11:18:00
你貼那網頁下面輸出直接RE了 你跟我說讀取功能沒問題...
作者: Sanvean   2017-11-26 16:56:00
會全部都一樣是因為只有要一次記憶體空間,所有的 ptr 指向同一個位址,所以會是最後一個輸入的值。不過第 91 行真的是會有記憶體存取的問題就是了XD

Links booklink

Contact Us: admin [ a t ] ucptt.com