표현식 인으로 배열에 스칼라 표현을 승격하지만 프로 시저에 대한 인수로 사용하지 않는 이유는 무엇입니까? 특히, 표준 기관이이 디자인 결정을 한 이유는 무엇입니까? 프로 시저에 과부하가 걸린다면 전적으로 애매한 것입니까? 이 상황에서 오류 메시지가 대체 방법 일 수 있습니까? 예를 들어, 아래 코드에서 마지막 문 x = foo(7)은 GFortran 오류
외부 텍스트 파일 (30 행, 7 열)의 데이터를 읽습니다. 각 행은 ","로 구분됩니다. ",,"로 표시된 누락 된 값이 있습니다. 2 차원 배열로 데이터를 읽을 때 누락 된 값은 0.00으로 바뀌지 만 데이터에도 0.00 값이 있습니다. 내가 평균을 계산할 때 (항목 수 (n)) 개수가 표시됩니다 - (누락 값 수). 누락 된 값을 어떻게 동적으로 고를
다음 서브 루틴에서 str이라는 문자열 변수를 전달하고 싶습니다. 'poly' 인 경우 'gaus', 'slat' 인 경우 사전 정의 된 동작 (fval = 아래 코드 참조)이 있습니다. 사용자가 문자열 변수로 사용하고 전달할 함수를 지정하게하고 싶습니다.입니다 ... 는 str = '3*cos(i*t)' 경우, 나는 fval가 3*cos(i*t) 같아야하
Fortran90을 처음 사용하고 있으며 가지고있는 문제점에 대한 답을 찾지 못했습니다. 모듈 안에 몇 가지 기능이있는 Fortran으로 작성된 모듈이 있습니다. 버전을 박탈 : 함수가 vdiStringGeneral이기 때문에 error LNK2019: unresolved external symbol _VDISTRINGGENERAL referenced in
Fortan은 원소 서브 루틴이 의도 (inout)와 의도 (out) 인자를 가지도록 허용하지만 원소 함수는 오직 의도 된 (int)이다. 왜 그럴까요? 문법적 규칙인가, 아니면 함수 호출과 서브 루틴 호출과 관련하여 일반적으로 다른 것이 있습니까? 즉 , Elemental Integer Function FOO(i)
Integer, intent(i
사용자가 읽을 문자열에 공백이 있으면 Fortran에서 read (별표, 별표)를 사용하면 작동하지 않는 것 같습니다. 사용자가 문자열을 입력하면 전용 "안녕하세요,"입력에 저장됩니다, "안녕 내 이름은 홍길동입니다" character(Len = 1000) :: input = ' '
read(*,*) input
; 다음 코드를 고려 공간을 제외
경험상 Fortran 90에서 큰 배열을 출력 파일에 저장하는 가장 좋은 방법은 무엇입니까? 이전에는 큰 배열을 ASCII 텍스트 파일에 쓰려고했습니다. 예를 들어, 내가 (페이지 In Fortran 90, what is a good way to write an array to a text file, row-wise? 하단의 추천 덕분에) 이런 짓을 할 것
저는 Fortran 초보자입니다. 나는 주 프로그램에서 4 개의 인수를 취할 서브 루틴을 작성하려고하고 있는데, 처음에 전달 된 4 개의 인수가 포함 된 배열을 주 프로그램에 출력합니다.이 작업을 수행하는 좋은 방법은 무엇입니까? 예를 들어, 아래에있는 내 테스트 프로그램에서, 나는 메인 프로그램에서 네 개의 실제 변수를 (a, b, c 및 d)를 만듭니다
동안 특정 라이브러리와 링크 할 때 매달려 내 최소한의 예는 다음과 같습니다 program test
implicit none
real :: testfunc
write(*,*) "Writing from main"
write(*,*) testfunc()
end program test
function testfunc()
내가 다른 종류의 type BazType
type(BarType), pointer :: barPtr
end type
을 갖고 싶어하고 foo%bar를 가리 키도록 barPtr을 설정 I는 다음 설치를 type BarType
integer :: i
end type
type FooType
type(BarType) :: ba