看板 C_and_CPP 關於我們 聯絡資訊
因為需要利用到所有英文字大小寫的各種組合 所以用遞迴寫了一個找出一個單字的所有大小寫組合的FUNCTION( AllWordCase) 然後在終止條件用得到的該字串跑一些功能 (showAllWordCase) code如下 http://codepad.org/8Vj8EPGy 可是不解的是程式會死在遞迴途中 如果我把Data data拿掉 把show加上註解先不用 那遞迴就可以順利執行 結果應該也正確 因為想知道死在哪 所以用printf 在各行 想看一下是當在哪 在if判斷式裡加在任何地方都沒有出現 所以應該是死在if判斷式外 又想知道是死在第幾層遞迴 所以printf(" i== %d ,i")加在宣告完tt1,tt2後 後來發現都是死在i==2的時候 不知道為什麼加回Data data 及show() 以後 就是會死當 或許是小弟有哪些對遞迴不懂的 百思不得其解 希望有高手可以指點一下@@ -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 106.1.244.14 ※ 編輯: jimmyoic 來自: 106.1.244.14 (10/14 23:59)
purincess:ithWordUpperCase跟show在哪裡,我也百思不得其解... 10/15 00:07
Schottky:顯然是錯在你 "先不用" 又沒貼出來的地方 10/15 00:16
Schottky:相信把 warning 打開你就會有所收獲 10/15 00:17
jimmyoic:問題是我在show()前跟ithxxx前也給過printf 一樣連印都 10/15 00:22
jimmyoic:出不來 試了很久@@ 10/15 00:22
purincess:你printf加\n換行的話會突然跑出東西來嗎 10/15 00:25
Schottky:信不信隨便你,反正看不見的code我也捏不扁他搓不圓它 10/15 00:26
jimmyoic:完全不會.. 10/15 00:27
jimmyoic:問題就是加了show()就當 可是卻當在跑到show之前 10/15 00:40
jimmyoic:所以完全不知道該怎麼辦 10/15 00:40
LPH66:那個...你的遞迴呼叫有在加了 Data 之後相應增加嗎? 10/15 00:48
LPH66:我是指 AllWordCase(data, tt1, i+1); //好像要這樣才對 10/15 00:48
jimmyoic:有的 可能我貼CODE的時候漏掉 不然連compile都不會過 10/15 00:51
kmeita:你呼叫的AllWordCase跟宣告的AllWordCase似乎不太一樣 10/15 00:51
jimmyoic:那是我沒貼好 SORRY@@ 10/15 00:56
bigpigbigpig:請問是cat->cat caT cAt cAT Cat CaT CAt CAT這樣嗎? 10/15 15:43
LPH66:你要不要把你的整支程式貼上來? 這樣實在很難找問題 orz 10/15 16:42
lc85301:矇著眼睛debug XDD 10/16 00:49
jimmyoic:我把我show裡的code 直接取代show() 就可以了orz 10/16 03:32
jimmyoic:是bigpig那個意思 10/16 03:32
purincess:襪 然後沒有給show() 果真要我們矇著眼睛debug 10/16 09:46
uranusjr:你需要的是超能力者 http://psychicdebugging.com/ 10/16 13:33
bigpigbigpig:如果是的話,為何不用power set,根本不需要遞迴啊:( 10/17 11:46