2015-06-30 1 views
0

Я хочу вызвать функцию matlab, которая принимает вводимые значения char. Но я не хочу использовать «апострофию» для определения как символа.Получить тип ввода «char» в функциях matlab

Это будет выглядеть следующим образом во время вызова

, например:

function [] = name(ea,dc) 

%% Here ea and dc to be char inputs. (I do not want to use 'ea' and 'dc') 

Так или иначе, моя функция должна признать этот вход в качестве входа полукокса. Итак, как это идентифицирует его.

Вы можете мне помочь?

+1

Это не имеет никакого смысла. Если вы не инкапсулируете переменные в символы '' ', MATLAB интерпретирует это как переменную. Если два входа, которые вы используете в качестве входа в 'имя', не существуют в вашей рабочей области или где бы вы не вызывали эту функцию до того, как вы вызываете эту функцию' name', MATLAB выплюнет ошибку. Пожалуйста, дайте лучший пример того, как следует называть «имя» и ** почему ** вы хотите достичь своей цели. – rayryeng

ответ

2

Использование ischar. Это проверяет, является ли вход в эту функцию символьным массивом и сообщает true, если он есть, и false в противном случае. Обратите внимание, что один символ также представляет собой массив символов ... это просто массив 1 x 1.

Таким образом, вы могли бы сделать что-то подобное в вашем коде:

function check(ip1, ip2) 
    if ischar(ip1) 
    %//... Do something if ip1 is a char 
    else 
    %//... Do something else if ip1 is not a char 
    end 

    if ischar(ip2) 
    %//... Do something if ip2 is a char 
    else 
    %//... Do something else if ip2 is not a char 
    end 
+0

Thankyou очень @rayryeng – user3476378

+0

@ пользователь3476378 - проблем нет. Дайте мне знать, если это сработает ... и если да, то я не против, если вы примете мой ответ. Удачи! – rayryeng

+0

Это не работает для следующей ситуации: ** При вызове функции, если я ввожу входные данные без «апострофии», то это не работает. Это был мой главный вопрос: я хочу вводить ввод без апострофии, и как-то функция определяет его как ввод символов и выполняет мою задачу. – user3476378

Смежные вопросы