Инициализация char массивов. - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (
https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: Инициализация char массивов. (
/showthread.php?tid=479812)
Инициализация char массивов. -
Slava[LSW] - 07.12.2013
Можно ли подобным способом
pawn Код:
new test[4 char] = {34, 35, 32, 23};
Инициализировать такие массивы?
Re: Инициализация char массивов. -
Stepashka - 07.12.2013
Можно.
Re: Инициализация char массивов. -
Slava[LSW] - 07.12.2013
Quote:
Originally Posted by Slava[LSW]
подобным
|
Конкретно вот так
pawn Код:
new test[4 char] = {34, 35, 32, 23};
не получается.
Re: Инициализация char массивов. -
White_116 - 07.12.2013
Для начало стоит прочесть:
http://forum.sa-mp.com/showpost.php?...&postcount=116
Так как механизм выделяемой памяти 4 байта, то нужно и число представить как 4 байта.
Как мы знаем
char - это 1 байт, а значит [](integer) вмещает в себя 4 числа {}(char)
Инициализация массива должна быть в представлении 4 байта.
Удобнее всего представлять числа в HEX, так как наглядно видно числа ячеек {} хоть и в HEX формате.
Возьмём распространённую ошибку:
Quote:
new test[4 char] = {34, 35, 32, 23};
|
Правильно будет так:
Quote:
new test[4 char] = {0x22232017};
|
Так же можно представить как число
integer:
Quote:
new test[4 char] = {572727319};
|
Или вот так:
Quote:
new test[1] = {0x22232017};
new test[1] = {572727319};
|
Re: Инициализация char массивов. -
Slava[LSW] - 07.12.2013
Спасибо