Re: [問題] main 包成 function後...

看板C_and_CPP (C/C++)作者 (找玩伴)時間16年前 (2009/11/20 12:16), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《almostreal (找玩伴)》之銘言: : 遇到的問題:最近專題已經到最後階段了 : 可是發生了無解的問題,困擾了我很久 : 我們要將五個從單音切下來的wave波形,重新以線性方式合成一個完整單音 :   這個專案檔由6個function組成po出來是有點困難 : 簡述我遇到的問題 : 我要把這個程式放在server當後端 : 前端會傳(char A*, double B*, double C*, int D) : 然後我要依這四個資料去做處理產生一個音檔 : 其實這不重要><" : 重點:我把main的內容包成function以利前端程式直接呼叫執行 : (前端不是我做的~"~) : 然後用main模前端傳送上面說的四個參數執行產生音檔 : 結果:main內容完全不做任何修改 在main裡執行結果正確 : 同樣內容包成function 由新的main去call function... : 可以編譯執行 但產生出來的音檔(*.wave)只有前44byte的標頭檔 : 其中查存成音檔前的內容並沒有問題 : 那...問題到底在哪???~"~ : 希望得到的正確結果:希望可以正確存成資料指定的音檔 : 程式跑出來的錯誤結果:音檔只存入前44byte標頭檔 : 開發平台:windows xp , code blocks : 有問題的code:我該怎麼說呢~"~ : 補充說明:我只想要有個方向去解決我的問題 : 可能是... : 參數傳遞問題??(有仔細查過~"~) : function call function的問題?? : function 有些什麼限制??(malloc??) : 請給我個方向吧>< : 感謝大家 我解決了我遇到的問題 小小分享一下 我在main裡call一個function的方式是  makefile(result_path,filedata,(44100*time)) ^^^^^^^^^^^^ 就是這裡出問題 包成function後 (44100*time)傳入makefile的值always是0 我用另一個變數先存(44100*time)後再傳就沒問題了 有人知道為什麼在main可以 變成function就不行的原因嗎?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.118.34.111

11/20 12:40, , 1F
如果makefile的第三個arg收的是float/double ... 那44100
11/20 12:40, 1F

11/20 12:41, , 2F
改成 44100.0 看看。
11/20 12:41, 2F
文章代碼(AID): #1B1XWBX3 (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1B1XWBX3 (C_and_CPP)