Strpack
Материал из Pawno Info Wikipedia
Описание:
Упаковывает указанную строку.
Параметры:
(dest[], source[], maxlength = sizeof(dest))
| dest | массив для записи упакованной строки |
| source | строка, которую нужно упаковать |
| maxlength | размер массива для записи упакованной строки |
Возвращаемые значения:
длина упакованной строки
|
Примечание |
Это имя функции начинается со строчной буквы. В случае, когда строка, переданная в source, уже упакована - функция просто скопирует строку. |
|
Важное |
Функция сохраняет строку в упакованном виде. Некоторые функции, такие как printf и format, не умеют правильно работать с упакованными строками, поэтому может понадобиться распаковать строку с помощью strunpack, прежде чем использовать её в одной из упомянутых функций. |
Пример использования:
stock PrintPackStatus(const name[], const string[]) printf("Строка %s %sупакована", name, ispacked(string) ? "" : "не ");
main()
{
// Строка str1 упакована, а str2 объявлена в неупакованном виде.
new str1[] = !"abcd";
new str2[] = "efgh";
// Выведем информацию о том, упакованы ли строки
PrintPackStatus("str1", str1); // "Строка str1 упакована"
PrintPackStatus("str2", str2); // "Строка str2 не упакована"
// Теперь распакуем str1 и, наоборот, упакуем str2
strpack(str1, str1);
strunpack(str2, str2);
// Выведем информацию об упакованности строк ещё раз
PrintPackStatus("str1", str1); // "Строка str1 не упакована"
PrintPackStatus("str2", str2); // "Строка str2 упакована"
}
Связанные функции
Следующие функции также могут быть полезны, поскольку они так или иначе связаны с рассматриваемой функцией.