Spec-Zone .ru
спецификации, руководства, описания, API
Spec-Zone .ru
спецификации, руководства, описания, API
Библиотека разработчика Mac Разработчик
Поиск

 

Эта страница руководства является частью версии 5.0 Инструментов XCode

Получить эти инструменты:

Если Вы выполняете версию Инструментов XCode кроме 5,0, просматриваете документацию локально:

Читать страницы руководства

Страницы руководства предназначаются как справочник для людей, уже понимающих технологию.

  • Чтобы изучить, как руководство организовано или узнать о синтаксисе команды, прочитайте страницу руководства для страниц справочника (5).

  • Для получения дополнительной информации об этой технологии, ищите другую документацию в Библиотеке Разработчика Apple.

  • Для получения общей информации о записи сценариев оболочки, считайте Shell, Пишущий сценарий Учебника для начинающих.



bytes(3pm)                            Perl Programmers Reference Guide                            bytes(3pm)



NAME
       bytes - Perl pragma to force byte semantics rather than character semantics

NOTICE
       This pragma reflects early attempts to incorporate Unicode into perl and has since been superseded.
       It breaks encapsulation (i.e. it exposes the innards of how the perl executable currently happens to
       store a string), and use of this module for anything other than debugging purposes is strongly
       discouraged. If you feel that the functions here within might be useful for your application, this
       possibly indicates a mismatch between your mental model of Perl Unicode and the current reality. In
       that case, you may wish to read some of the perl Unicode documentation: perluniintro, perlunitut,
       perlunifaq and perlunicode.

SYNOPSIS
           use bytes;
           ... chr(...);       # or bytes::chr
           ... index(...);     # or bytes::index
           ... length(...);    # or bytes::length
           ... ord(...);       # or bytes::ord
           ... rindex(...);    # or bytes::rindex
           ... substr(...);    # or bytes::substr
           no bytes;

DESCRIPTION
       The "use bytes" pragma disables character semantics for the rest of the lexical scope in which it
       appears.  "no bytes" can be used to reverse the effect of "use bytes" within the current lexical
       scope.

       Perl normally assumes character semantics in the presence of character data (i.e. data that has come
       from a source that has been marked as being of a particular character encoding). When "use bytes" is
       in effect, the encoding is temporarily ignored, and each string is treated as a series of bytes.

       As an example, when Perl sees "$x = chr(400)", it encodes the character in UTF-8 and stores it in $x.
       Then it is marked as character data, so, for instance, "length $x" returns 1. However, in the scope
       of the "bytes" pragma, $x is treated as a series of bytes - the bytes that make up the UTF8 encoding
       - and "length $x" returns 2:

           $x = chr(400);
           print "Length is ", length $x, "\n";     # "Length is 1"
           printf "Contents are %vd\n", $x;         # "Contents are 400"
           {
               use bytes; # or "require bytes; bytes::length()"
               print "Length is ", length $x, "\n"; # "Length is 2"
               printf "Contents are %vd\n", $x;     # "Contents are 198.144"
           }

       chr(), ord(), substr(), index() and rindex() behave similarly.

       For more on the implications and differences between character semantics and byte semantics, see
       perluniintro and perlunicode.

LIMITATIONS
       bytes::substr() does not work as an lvalue().

SEE ALSO
       perluniintro, perlunicode, utf8



perl v5.12.5                                     2012-10-11                                       bytes(3pm)

Сообщение о проблемах

Способ сообщить о проблеме с этой страницей руководства зависит от типа проблемы:

Ошибки содержания
Ошибки отчета в содержании этой документации к проекту Perl. (См. perlbug (1) для инструкций представления.)
Отчеты об ошибках
Сообщите об ошибках в функциональности описанного инструмента или API к Apple через Генератор отчетов Ошибки и к проекту Perl, использующему perlbug (1).
Форматирование проблем
Отчет, форматирующий ошибки в интерактивной версии этих страниц со ссылками на отзыв ниже.