Tối đa Fortran 2003 mã dừng có thể là vô hướng-char-hằng số hoặc chuỗi có tối đa 5 chữ số. Một vô hướng-char-hằng số có nghĩa là những gì người khác có thể gọi một chuỗi, ví dụ: "err"
của bạn nhưng không phải là err_msg
.
Trong Fortran 2008 mã dừng có thể là một biểu hiện có thể trả về một vô hướng mặc định-char-hằng-expr hoặc một vô hướng-int-hằng-expr. Nếu bạn đã có một Fortran 2008 biên dịch phù hợp sau đó bạn có thể sử dụng một tham số (ví dụ một cái gì đó khai báo là character(len=3), parameter :: err_msg = "err"
) như một mã dừng
Tất nhiên, tình hình thực hiện các tính năng được giới thiệu trong các tiêu chuẩn 2003 và 2008 dao động từ trình biên dịch để biên dịch và phiên bản lên phiên bản. Dường như phiên bản trình biên dịch của bạn không vượt quá tiêu chuẩn Fortran 2003.
Và hệ điều hành của bạn làm gì với mã dừng là một vấn đề khác.
Nguồn
2013-07-03 11:41:06
Ah, tôi đã bỏ lỡ rằng đó chỉ là Fortran 2008 có thể sử dụng các biểu thức. Có vẻ như gfortran mới nhất hỗ trợ các biểu thức mã ngừng, nhưng không hỗ trợ phiên bản của tôi. Hơi đau. – Yossarian
@IanH, viết bên dưới, đã sửa lỗi không chính xác trong phiên bản trước của câu trả lời này mà tôi hiện đã chỉnh sửa. Cảm ơn Ian. –