2011-12-17 34 views

Trả lời

12

Bạn có thể sử dụng chức năng exist trong Octave để thực hiện công việc. Nó có thể được sử dụng để kiểm tra sự tồn tại của tên được đặt dưới dạng biến, được xây dựng trong hàm, tệp hoặc thư mục. Trong trường hợp bạn, để kiểm tra sự tồn tại của một biến, bạn có thể sử dụng một cái gì đó như thế này:

if (exist("your_var_name", "var") == 1) 
    printf("varname exists"); 
else 
    printf("varname not exists"); 
endif 

Bạn có thể tham khảo các liên kết sau đây để biết thông tin chi tiết:

+2

Sẽ là nếu (tồn tại ("varname", "var") == 1) – Serhiy

5

Cũng cần đặt tên biến trong dấu ngoặc kép,

tồn tại ("varname", "var")

2
if (exist("itemcount") == 1) 
    % here it checks if itemcount is a variable, by changing the value after ==, you can check for function name, file name, dir, path etc. 
end 

Note ITEMCOUNT là trong dấu ngoặc kép.

Bằng cách thay đổi giá trị sau ==, bạn có thể kiểm tra tên hàm, tên tập tin, thư mục, đường dẫn, vv

từ/thêm thông tin tại: https://www.gnu.org/software/octave/doc/interpreter/Status-of-Variables.html#XREFexist

giá trị trả về khác .. 2 nếu tên là tên tệp tuyệt đối, tệp bình thường trong đường dẫn của Octave hoặc (sau khi thêm '.m') một tệp hàm trong đường dẫn của Octave, 3 nếu tên là tệp '.oct' hoặc '.mex' trong Octave's đường dẫn, 5 nếu tên là một chức năng được xây dựng trong, 7 nếu tên là một thư mục, hoặc 103 nếu tên là một chức năng không liên kết với một tập tin (được nhập vào dòng lệnh). Nếu không, hãy trả lại 0.

Các vấn đề liên quan