0

나는 C++ 문자가 Fortran 함수의 인자로 주어진 혼합 된 C++/Fortran으로 된 프로그램을 가지고있다.gfortran과 MIXED_STR_LEN_ARG

코드는 컴파일 및 문자 인수에 대한 숨겨진 길이의 위치를 ​​(https://software.intel.com/en-us/node/525960 참조)를 지정하는 옵션 -mixed_str_len_arg을 사용하여, 컴파일러 ifort 와 함께 일하고있다.

어떤 이유로 든 gfortran을 사용하여 코드를 컴파일하려고하지만이 컴파일러에서 동일한 옵션을 찾지 못했습니다. 비슷한 옵션이나 다른 대안을 알고 있습니까?

답변

1

사용할 수있는 플래그가 없습니다. 호출 규칙은 고정되어 있으며 설명서에 정확히 지정되어 있습니다. https://gcc.gnu.org/onlinedocs/gfortran/Argument-passing-conventions.html

C (++)와 Fortran 사이에서 상호 작용할 경우. 현대적인 상호 운용성 기능을 사용하는 것이 좋습니다. Fortran bind(C) 프로 시저에는 숨겨진 인수가 없으므로 필요에 따라 함수를 정확하게 정의 할 수 있습니다.

+0

나는 SO의 친밀한 검색은 OP와의 상호 작용을 구현하는 데있어 Q와 A를 제시한다고 생각합니다. 내가 지금 당장 할 시간이 없다. –

+0

답장을 보내 주셔서 감사합니다 블라디미르 F, (이전) 포트란 코드를 수정하지 않으려 고 bind (C) 프로 시저를 사용하고 싶습니다. 그러나 전환점이없는 것처럼 보입니다. –

관련 문제