Vì vậy, tôi muốn viết các chức năng lớn hơn trong Commodore 64 BASIC. Cho đến nay, từ những gì tôi nhìn thấy từ các nguồn khác (chẳng hạn như các wiki khác nhau của C64, cũng như hướng dẫn sử dụng cho bản thân C64), các định nghĩa hàm chỉ có thể dài một dòng. Đó là để nói, tôi dường như không thể tìm thấy một cấu trúc tương tự trong BASIC để ngoặc/bất kỳ ngôn ngữ nào khác sử dụng để phân định khối mã.Chức năng nhiều dòng trong Commodore 64 BASIC
Có ai biết cách tôi viết các khối mã trong BASIC có nhiều hơn một dòng không?
Ví dụ về chức năng một dòng:
10 def fn X(n) = n + 1
20 print fn X(5) rem Correctly called function. This will output 6
Nhưng tôi không thể làm điều gì đó như:
10 def fn X(n) =
20 n = n + 1
30 print n
40 rem I'd like the definition of function X to end at line 30 above
50 fn X(5) rem Produces syntax error on line 40
Cảm ơn bạn đã dành thời gian!
modbasic là một phần mở rộng cơ bản (nêm?) Cho phép bạn làm các chương trình con với các tham số và thậm chí đệ quy. Thử tìm kiếm trên web với: "modbasic" commodore – Core
Bạn không cần phải đặt chương trình con trước gosub. Trong thực tế, khi mọi thứ đứng chương trình của bạn sẽ bị lỗi bởi vì nó sẽ thực thi 'return' trước khi nó đã thực thi' gosub'. – JeremyP
Tôi đã nghĩ về nó nhiều hơn như là một phần của một tổng thể lớn hơn, nhưng bạn đúng rằng nó gây hiểu lầm và sẽ có một lỗi nếu chạy trong sự cô lập. Tôi đã renumbered nó và thêm một tuyên bố nhận xét (bình luận) để làm rõ hơn nó. – Feneric