Fortran字符串赋值报Unclassifiable statement at (1)错误如何解决
报错原因
该错误由Fortran字符类型赋值的语法规则不满足导致:Fortran要求所有字符串字面量必须使用单引号或双引号包裹,你在给String1到String5赋值时,右侧的文本没有加任何引号,编译器无法识别这段内容的语义,因此判定为非法语句,抛出无法归类语句的报错。
修复方法
给所有赋值语句右侧的文本加上单引号/双引号即可,修正后的代码如下:
program AssignmentOne !Nik Wrye !CDS-251-001 !Assignment #1 !September 2, 2021 !This program is to print out my full name, email address, course number, !'Assignment 1', and the due date on the terminal screen. implicit none !I will now declare the variables with a delimiter character(len=42):: String1, String2, String3, String4, String5 String1 = 'Full name: Nikolas Wrye' String2 = 'Email address: redacted@redacted.edu' String3 = 'Course number: CDS-251-001' String4 = 'Assignment One' String5 = 'Due date: September 2nd, 2021' !Telling the terminal what to do with values print*, String1 print*, String2 print*, String3 print*, String4 print*, String5 !The end end program AssignmentOne
如果只是需要打印固定内容,也可以省去变量声明步骤,直接在print语句中输出字符串,简化后的代码如下:
program AssignmentOne implicit none print*, 'Full name: Nikolas Wrye' print*, 'Email address: redacted@redacted.edu' print*, 'Course number: CDS-251-001' print*, 'Assignment One' print*, 'Due date: September 2nd, 2021' end program AssignmentOne
内容的提问来源于stack exchange,提问作者Nik Wrye
相关产品推荐
相关产品推荐

