[問題] 請問在c++呼叫fortran函式回傳值不對

看板Programming作者 (William)時間18年前 (2007/07/16 19:00), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
C++的部份 main.cc: ================================================ #include <iostream> extern "C"{ float lala_(float* y); } int main() { float a = 3; std::cout<< lala_(&a) << std::endl; return 0; } ================================================ FORTRAN的部份 test.f: ================================================ real function lala(y) real y lala=y**2 write(*,*),lala return end ================================================ 編譯 g77 -c test.f g++ main.cc test.o -lg2c ./a.out 結果 9. -> fortran裡面write出來的 0 -> c++裡面cout 可是這兩個東西應該一樣是9的啊 我是不是漏了什麼東西? 請指點一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.101.46
文章代碼(AID): #16cq_DnN (Programming)
文章代碼(AID): #16cq_DnN (Programming)