(я совершенно не правильно понял вопрос).
Итак, да - используйте «% @» для типов объектов. Передайте * myString в NSLog (), чтобы преобразовать NSString ** в NSString *.
Обратите внимание, что вам, вероятно, следует использовать NSError
для инкапсуляции ошибок, и вам следует проверить, равен ли ваш параметр передачи по ссылке NULL, прежде чем присваивать ему значение.
См .:
while [[ $1 = -* ]]; do
arg=$1; shift # shift the found arg away.
case $arg in
--foo)
do_foo "$1"
shift # foo takes an arg, needs an extra shift
;;
--bar)
do_bar # bar takes no arg, doesn't need an extra shift
;;
esac
done
Хороший пример того, как реализовать короткие и длинные переключатели рядом сторона mcurl:
В Bash есть функция getops, как упоминалось здесь ранее, которая может решить ваши проблемы.
Если вам нужно что-то более сложное, bash также поддерживает позиционные параметры (упорядоченные $ 1 ... $ 9, а затем $ {10} .... $ {n}), вам придется придумать свою собственную логику. для обработки этого ввода. Один из простых способов - поместить переключатель / регистр внутри цикла for, перебирая параметры. Вы можете использовать одну из двух специальных переменных bash, обрабатывающих ввод: $ * или $ @ .