[FAQ] Переменные - Форум Cheat-Master.ru
  • Страница 1 из 1
  • 1
Модератор форума: Phoenixxx_Czar, Getbackthere, [CM]OlegEhtler  
[FAQ] Переменные
Leazy Дата: Среда, 02.05.2012, 17:32 | Сообщение # 1
Боец
Сообщений: 76
Статус: Offline
Переменная это не неотъемлемая часть скрипта.Она имеет свой тег и значение.

В языке PAWN один тип, это ячейка - 4 байта, ячейка равна 4 байтам, или 32 битам, что соответствует данному диапазаону (диапазон от -2147483648 до 2147483647)
она является, как универсальный тип.

new - объявление переменной .
Синтаксис объявления переменной - new название; или new тег название = значние;
по стандарту если вы не указали тег переменной значение будет целым числом INT.

INT - целые числа, например 1,9,48,99.
Еще в целых числах можно хранить символы. Например h,r,u.
Пример объявления такой переменной:
new name; (значение не указано,значит оно будет равно нулю),или же
new name = 93. Значение будет равно 93. либоnew name = 'y';

Float: - ( число с плавающей запятой ), например 1.2 или 47.797 .
Для вещественных чисел применяется специальный тег Float:, именно специальный, потому что он обладает специфичным свойством,
отличающим его от остальных тегов, которые в случаи присвоения вещественного числа будут давать предупрежденние компилятора о несоответствие тегов и их значений
без соответствущего присвоения с первичным "сбросом" первоначального тега по-средству _:или же самого на себя.
Пример объявления: new Float: название; Либо new Float: название = значение;
Пример: new Float: name; (значение не указано,значит оно будет равно 0.0) или newFloat: name = 47.797; будет равна 47.797.

Вывод переменных:
( покажу на примере функции printf - выводит перменные в консоль. )
Спецификатор %d - ( вывод целочисленной перменной). еще может быть %i - тоже самое что и %d.
Пример. создадим перменную:
new name = 33;
Выведем в консоль printf( "Значение перемнной - %d", name );

Спецификатор %s - ( вывод текста ).
Пример. создадим перменную:
new name[5] = "text";

Выведем в консоль printf( "Значение перемнной - %s", name );

Спецификатор %f - ( вывод числа с точкой ).
Пример. создадим перменную:
new Float: name = 3.7;
Выведем в консольprintf( "Значение перемнной - %f", name );

Спецификатор %c - ( вывод одного символа ).
Пример. создадим перменную:
new name = 'y';
Выведем в консоль printf( "Значение перемнной - %c", name );

Еще переменные можно объявлять через static, это статическая переменная. Она может быть использована как в локальной так и в глобальной среде.
Особенность такой переменной в том что она сохраняется в локальной среде. Дело в том, что если объявить переменную в локальной среде, то при каждом вызове
этой среды, переменная будет пересоздаваться, и её прошлые значения не будут сохраняться, нежели со static.
К примеру:
Создадим функцию без аргументов под названием "FirstFunction"

При первом вызове переменная будет равна 0, и при тоже при последующих вызовах, так как она постоянно создается заного, и её новое значение ( 33 )не будет сохранятся.
А теперь попробуем, через static:

При первом вызове наша переменная будет равна 0, а уже при последующих будет равна 33, так как ниже мы установили ей новое значение 33. И значение сохраняется.

Переменную нельзя использовать до её инициализации , то есть пока переменная не объявлена нельзя ей пользоваться например :
Как нельзя делать:

В данном случае переменная в строке 1 не будет определена компилятором ( error 017: undefined symbol "pass" )
Как правильно:

*Поправил Ice


Сообщение отредактировал [Ice] - Среда, 02.05.2012, 19:07
Tosoti Дата: Воскресенье, 07.06.2015, 13:01 | Сообщение # 2
Боец
Сообщений: 150
Статус: Offline
Спасибо, очень помог smile
  • Страница 1 из 1
  • 1
Поиск: