2017-09-18 3 views
0

Fortran 77로 작성된 코드를 Fortran 90으로 변경하는 중입니다. 그리고 다음 오류를 컴파일하는 Im이 나타나면 이미 검색했으며 xint가 배열로 선언되어 문제가 아님을 알고 있습니다. .Fortran에서 읽기의 구문 오류

Integer :: n,nitp,m 
Integer,parameter :: mdi1=3500 
Double Precision :: xint(mdi1),yint(mdi1) 

D500: do m=1,nitp 
    read(4,*) n,xint(m),yint(m) 
End Do D500 

read(4,*) n,xint(m),yint(m) 
       1 
Error: Syntax error in READ statement at (1) 

어떤 도움을 주시면 감사하겠습니다. 나는 블라디미르가 내 문제를 더 잘 설명하려고 노력한다.

+0

환영합니다. 더 많은 코드를 사용하십시오. 충분하지 않습니다. 우리는'n '이 무엇인지,'xint'가 무엇인지,'yint'가 무엇인지 알아야합니다. 그들이 선언 된 방법과 그들의 가치는 어디에서 비롯된 것입니까? 배열이 충분하지 않다는 것을 말하면, 우리는 여러분이 보여주는 것과 같은 오류를 줄 수있는 코드가 필요합니다. 어떤 종류의 코드가 필요한지 확인하려면 [ask] 및 특히 [mcve]를 참조하십시오. 충분히 완전해야합니다. 한 줄로 거의 충분하지 않습니다. 그리고 [투어]를하는 것을 잊지 마세요. –

+0

의견을 보내 주셔서 감사합니다. 제 질문을 개선하기 위해 노력했습니다. 내 문제에 대해 더 나은 생각을 가질 필요가있는 다른 것이 있으면 주저하지 말고 요청하십시오. 다시 한번 감사드립니다. –

+1

제공 한 코드를 오류 여부와 상관없이 사용해보십시오. 나는 그렇지 않다고 생각한다. –

답변

0

표시중인 내용이 아직 완성되지 않았기 때문에 코드가 오래된 g95 컴파일러에서 문제없이 컴파일됩니다. 방금 복사해서 컴파일했습니다.

코드의 다른 부분에 오류가 있거나 (이 경우보다 완전한 버전을 표시하십시오)이 시점에서 스스로를 표시하고 있지 않으면 형식 문제가있을 수 있습니다.

고정 된 형식을 사용하고 있는지 또는 편집기에서 파일에 넣고있는 "숨겨진"문자가 있고 컴파일러가 TAB 또는 다른 문자처럼 이해할 수 없는지 확인하십시오.

+0

당신이 옳았습니다. 모든 변수를 검사하기 시작했습니다. 이제는이 오류가 더 이상 표시되지 않습니다. 다른 변수에 문제가있었습니다. 어쨌든 피드백에 감사드립니다. 인사말! –

+0

당신은 환영합니다 :) – Jauch