Оптимизация кода
#43

Quote:
Originally Posted by доки, доки и еще раз доки....
The sizeof operator returns the size of a variable in “elements”. For a
simple (non-compound) variable, the result of sizeof is always 1, because an
element is a cell for a simple variable.

An array with one dimension holds a number of cells and the sizeof operator
returns that number. The snippet below would therefore print “5” at the
display, because the array “msg” holds four characters (each in one cell) plus
a zero-terminator:

Listing: sizeof operator
pawn Code:
new msg[] = "Help"
printf("%d", sizeof msg);
With multi-dimensional arrays, the sizeof operator can return the number
of elements in each dimension. For the last (minor) dimension, an element
will again be a cell, but for the major dimension(s), an element is a sub-array.
In the following code snippet, observe that the syntax sizeof matrix refers
to the major dimension of the two-dimensional array and the syntax sizeof
matrix[] refers to the minor dimension of the array. The values that this
snippet prints are 3 and 2 (for the major and minor dimensions respectively):

Listing: sizeof operator and multidimensional arrays
pawn Code:
new matrix[3][2] = { { 1, 2 }, { 3, 4 }, { 5, 6 } }
printf("%d %d", sizeof matrix, sizeof matrix[]);
The application of the sizeof operator on multi-dimensional arrays is especially
convenient when used as a default value for function arguments.
Quote:
Originally Posted by оттуда же
results in the size in “elements” of the specified variable. For
simple variables and for arrays with a single dimension, an
element is a cell. For multi-dimensional arrays, the result is
the number of array elements in that dimension —append []
to the array name to indicate a lower/more minor dimension.
If the size of a variable is unknown, the result is zero.
When used in a default value for a function argument, the expression
is evaluation at the point of the function call, instead
of in the function definition.
1) Если массив был явно объявлен в скрипте, то его размер известен и не может измениться ==> sizeof вычислится прямо во время компиляции (см. пример из первой цитаты).

2) Если допустим массив передан функции в качестве параметра, то его размер НЕ может быть вычислен (т.к. функции передается всего лишь его адрес) (как в примере с OnPlayerText выше), стало быть его надо указывать явно (например, передавать в качестве дополнительного параметра).

3) Когда sizeof выступает в качестве дефолтного значения одного из аргументов функции (при этом будучи примененным к другому ее аргументу), его значения вычисляетя непосредственно при самом вызове функции (если оно может быть вычислено, см. пункт 2).
Reply


Messages In This Thread
Оптимизация кода - by RAEN - 11.06.2010, 10:39
Оптимизация кода - by BaRRyS3R - 11.06.2010, 10:48
Оптимизация кода - by RAEN - 11.06.2010, 11:19
Оптимизация кода - by Fro1sha - 11.06.2010, 11:30
Оптимизация кода - by RAEN - 11.06.2010, 11:34
Оптимизация кода - by Fro1sha - 11.06.2010, 11:51
Оптимизация кода - by RAEN - 11.06.2010, 12:09
Оптимизация кода - by BaRRyS3R - 11.06.2010, 12:30
Оптимизация кода - by RAEN - 11.06.2010, 12:46
Оптимизация кода - by Fro1sha - 11.06.2010, 12:51
Re: Оптимизация кода - by Zeex - 11.06.2010, 14:16
Re: Оптимизация кода - by RAEN - 11.06.2010, 14:18
Re: Оптимизация кода - by MX_Master - 11.06.2010, 14:20
Re: Оптимизация кода - by Fro1sha - 11.06.2010, 15:09
Re: Оптимизация кода - by MX_Master - 11.06.2010, 15:53
Re: Оптимизация кода - by eakwarp - 11.06.2010, 15:59
Re: Оптимизация кода - by JesterX - 11.06.2010, 17:32
Re: Оптимизация кода - by MX_Master - 11.06.2010, 17:47
Re: Оптимизация кода - by ZaR - 11.06.2010, 18:27
Re: Оптимизация кода - by eakwarp - 11.06.2010, 18:53
Re: Оптимизация кода - by eakwarp - 11.06.2010, 18:55
Re: Оптимизация кода - by MX_Master - 12.06.2010, 03:57
Re: Оптимизация кода - by eakwarp - 12.06.2010, 07:15
Re: Оптимизация кода - by Toney - 12.06.2010, 11:54
Re: Оптимизация кода - by eakwarp - 12.06.2010, 12:01
Re: Оптимизация кода - by JesterX - 12.06.2010, 12:43
Re: Оптимизация кода - by MX_Master - 12.06.2010, 15:36
Re: Оптимизация кода - by Fro1sha - 12.06.2010, 16:35
Re: Оптимизация кода - by eakwarp - 12.06.2010, 16:44
Re: Оптимизация кода - by Romanius - 12.06.2010, 17:58
Re: Оптимизация кода - by MX_Master - 12.06.2010, 18:18
Re: Оптимизация кода - by Romanius - 12.06.2010, 18:39
Re: Оптимизация кода - by Fro1sha - 12.06.2010, 18:55
Re: Оптимизация кода - by Toney - 12.06.2010, 19:12
Re: Оптимизация кода - by eakwarp - 12.06.2010, 21:30
Re: Оптимизация кода - by MX_Master - 13.06.2010, 15:11
Re: Оптимизация кода - by Stepashka - 13.06.2010, 16:08
Re: Оптимизация кода - by ZiGGi - 13.06.2010, 16:32
Re: Оптимизация кода - by MX_Master - 13.06.2010, 16:43
Re: Оптимизация кода - by Fro1sha - 13.06.2010, 16:43
Re: Оптимизация кода - by [JIeXa] - 16.06.2010, 12:40
Re: Оптимизация кода - by Stepashka - 16.06.2010, 13:04
Re: Оптимизация кода - by Zeex - 16.06.2010, 13:20
Re: Оптимизация кода - by Stepashka - 16.06.2010, 13:35
Re: Оптимизация кода - by JesterX - 16.06.2010, 13:49
Re: Оптимизация кода - by MX_Master - 16.06.2010, 13:51
Re: Оптимизация кода - by JesterX - 16.06.2010, 13:55
Re: Оптимизация кода - by Zeex - 16.06.2010, 13:56
Re: Оптимизация кода - by MX_Master - 16.06.2010, 14:00
Re: Оптимизация кода - by MX_Master - 16.06.2010, 14:11
Re: Оптимизация кода - by Stepashka - 16.06.2010, 14:15
Re: Оптимизация кода - by MX_Master - 16.06.2010, 14:21
Re: Оптимизация кода - by Zeex - 16.06.2010, 14:34
Re: Оптимизация кода - by RAEN - 16.06.2010, 14:50
Re: Оптимизация кода - by Fro1sha - 16.06.2010, 15:03
Re: Оптимизация кода - by MX_Master - 16.06.2010, 16:02
Re: Оптимизация кода - by Fro1sha - 16.06.2010, 16:13
Re: Оптимизация кода - by MX_Master - 16.06.2010, 16:23
Re: Оптимизация кода - by [JIeXa] - 16.06.2010, 16:46
Re: Оптимизация кода - by Romanius - 16.06.2010, 17:32
Re: Оптимизация кода - by MX_Master - 16.06.2010, 17:37
Re: Оптимизация кода - by Stepashka - 16.06.2010, 17:42
Re: Оптимизация кода - by Romanius - 16.06.2010, 17:43
Re: Оптимизация кода - by MX_Master - 16.06.2010, 17:48
Re: Оптимизация кода - by Romanius - 16.06.2010, 17:51
Re: Оптимизация кода - by Stepashka - 16.06.2010, 18:01
Re: Оптимизация кода - by JesterX - 16.06.2010, 18:35
Re: Оптимизация кода - by MX_Master - 16.06.2010, 19:51
Re: Оптимизация кода - by RAEN - 17.06.2010, 01:10
Re: Оптимизация кода - by [JIeXa] - 17.06.2010, 02:00
Re: Оптимизация кода - by Stepashka - 12.07.2010, 14:12
Re: Оптимизация кода - by Romanius - 12.07.2010, 18:21
Re: Оптимизация кода - by MX_Master - 13.07.2010, 02:33
Re: Оптимизация кода - by Stepashka - 13.07.2010, 03:31
Re: Оптимизация кода - by Aleks10 - 13.07.2010, 03:49
Re: Оптимизация кода - by Romanius - 13.07.2010, 07:17
Re: Оптимизация кода - by Stepashka - 13.07.2010, 07:18
Re: Оптимизация кода - by Alex009 - 13.07.2010, 07:42
Re: Оптимизация кода - by Stepashka - 13.07.2010, 07:50
Re: Оптимизация кода - by Maccer - 13.07.2010, 15:51
Re: Оптимизация кода - by Aleks10 - 15.07.2010, 01:51
Re: Оптимизация кода - by DANGER1979 - 15.07.2010, 19:53
Re: Оптимизация кода - by Stepashka - 15.07.2010, 21:09
Re: Оптимизация кода - by MX_Master - 16.07.2010, 13:28
Re: Оптимизация кода - by DANGER1979 - 17.07.2010, 05:12
Re: Оптимизация кода - by Romanius - 17.07.2010, 06:19
Re: Оптимизация кода - by Stepashka - 17.07.2010, 07:11
Re: Оптимизация кода - by ZiGGi - 17.07.2010, 08:10
Re: Оптимизация кода - by Stepashka - 17.07.2010, 09:13
Re: Оптимизация кода - by MX_Master - 17.07.2010, 09:44
Re: Оптимизация кода - by DANGER1979 - 10.08.2010, 11:33
Re: Оптимизация кода - by MX_Master - 10.08.2010, 12:15
Re: Оптимизация кода - by DANGER1979 - 13.08.2010, 11:26
Re: Оптимизация кода - by Stepashka - 13.08.2010, 11:42
Re: Оптимизация кода - by Johnny_Xayc - 15.08.2010, 12:22
Re: Оптимизация кода - by MX_Master - 15.08.2010, 12:44
Re: Оптимизация кода - by Johnny_Xayc - 15.08.2010, 12:56
Re: Оптимизация кода - by MX_Master - 15.08.2010, 13:12
Re: Оптимизация кода - by ^Woozie^ - 16.08.2010, 07:53
Re: Оптимизация кода - by Johnny_Xayc - 16.08.2010, 08:00
Re: Оптимизация кода - by Jon_De - 04.08.2011, 12:40
Re: Оптимизация кода - by White_116 - 04.08.2011, 13:22
Re: Оптимизация кода - by Stepashka - 04.08.2011, 13:32
Re: Оптимизация кода - by [SnoowkeR] - 05.08.2011, 11:46
Re: Оптимизация кода - by Stepashka - 05.08.2011, 12:58
Re: Оптимизация кода - by Baks - 07.08.2011, 09:55
Re: Оптимизация кода - by Jon_De - 07.08.2011, 14:21
Re: Оптимизация кода - by Baks - 07.08.2011, 14:40
Re: Оптимизация кода - by Norck - 07.08.2011, 14:51
Re: Оптимизация кода - by Baks - 07.08.2011, 14:58
Re: Оптимизация кода - by HappyScripter - 07.08.2011, 15:33
Re: Оптимизация кода - by Jon_De - 07.08.2011, 15:40
Re: Оптимизация кода - by Stepashka - 07.08.2011, 18:44
Re: Оптимизация кода - by Jon_De - 07.08.2011, 18:57
Re: Оптимизация кода - by Stepashka - 07.08.2011, 19:25
Re: Оптимизация кода - by Romanius - 07.08.2011, 19:29
Re: Оптимизация кода - by Jon_De - 07.08.2011, 20:59
Re: Оптимизация кода - by Stepashka - 08.08.2011, 04:09
Re: Оптимизация кода - by Jon_De - 08.08.2011, 11:30
Re: Оптимизация кода - by Stepashka - 08.08.2011, 11:52
Re: Оптимизация кода - by DANGER1979 - 08.08.2011, 12:33
Re: Оптимизация кода - by Stepashka - 08.08.2011, 12:38
Re: Оптимизация кода - by DANGER1979 - 08.08.2011, 12:42
Re: Оптимизация кода - by Stepashka - 08.08.2011, 13:57
Re: Оптимизация кода - by Romanius - 08.08.2011, 14:24
Re: Оптимизация кода - by Stepashka - 08.08.2011, 14:39
Re: Оптимизация кода - by HappyScripter - 08.08.2011, 16:17
Re: Оптимизация кода - by Stepashka - 08.08.2011, 16:39
Re: Оптимизация кода - by HappyScripter - 08.08.2011, 16:52
Re: Оптимизация кода - by Stepashka - 08.08.2011, 17:00
Re: Оптимизация кода - by eakwarp - 22.04.2012, 09:13
Re: Оптимизация кода - by ZiGGi - 22.04.2012, 10:06
Re: Оптимизация кода - by stabker - 24.04.2012, 16:51
Re: Оптимизация кода - by Be$$0n - 25.04.2012, 07:54
Re: Оптимизация кода - by Evansive - 08.05.2012, 18:29
Re: Оптимизация кода - by Baks - 08.05.2012, 19:19
Re: Оптимизация кода - by DartfoL - 08.05.2012, 19:22
Re: Оптимизация кода - by Evansive - 08.05.2012, 19:32
Re: Оптимизация кода - by Jon_De - 18.08.2012, 20:39
Re: Оптимизация кода - by Mutha_X - 19.08.2012, 10:44
Re: Оптимизация кода - by grod - 03.10.2012, 17:15
Re: Оптимизация кода - by Stepashka - 03.10.2012, 17:38
Re: Оптимизация кода - by x_O - 07.10.2012, 13:59
Re: Оптимизация кода - by DrSlett - 07.10.2012, 14:59
Re: Оптимизация кода - by x_O - 07.10.2012, 15:01
Re: Оптимизация кода - by DrSlett - 07.10.2012, 15:08
Re: Оптимизация кода - by x_O - 07.10.2012, 15:10
Re: Оптимизация кода - by DrSlett - 07.10.2012, 15:13
Re: Оптимизация кода - by hub4 - 24.11.2012, 13:13
Re: Оптимизация кода - by eakwarp - 24.11.2012, 14:09
Re: Оптимизация кода - by safari - 25.11.2012, 13:06
Re: Оптимизация кода - by eakwarp - 25.11.2012, 13:27
Re: Оптимизация кода - by hub4 - 25.11.2012, 16:41
Re: Оптимизация кода - by proSeryoga - 03.01.2013, 08:50
Re: Оптимизация кода - by emit - 03.01.2013, 12:21
Re: Оптимизация кода - by Sanbody - 04.01.2013, 16:21
Re: Оптимизация кода - by Sanbody - 04.01.2013, 16:58
Re: Оптимизация кода - by Gameyer - 10.01.2013, 09:21
Re: Оптимизация кода - by Stepashka - 10.01.2013, 10:06
Re: Оптимизация кода - by AirKite - 10.01.2013, 16:40
Re: Оптимизация кода - by DrSlett - 27.01.2013, 16:58
Re: Оптимизация кода - by anybox - 27.01.2013, 17:00
Re: Оптимизация кода - by Stepashka - 27.01.2013, 17:12
Re: Оптимизация кода - by stabker - 27.01.2013, 17:42
Re: Оптимизация кода - by Maikkk - 27.01.2013, 18:29
Re: Оптимизация кода - by dimonml - 27.01.2013, 18:53
Re: Оптимизация кода - by eakwarp - 27.01.2013, 19:32
Re: Оптимизация кода - by hub4 - 01.02.2013, 06:26
Re: Оптимизация кода - by Stepashka - 01.02.2013, 06:31
Re: Оптимизация кода - by White_116 - 01.02.2013, 06:59
Re: Оптимизация кода - by White_116 - 08.03.2013, 16:49
Re: Оптимизация кода - by Alexander_Petrov - 08.03.2013, 16:59
Re: Оптимизация кода - by proff116 - 08.03.2013, 17:00
Re: Оптимизация кода - by White_116 - 08.03.2013, 17:05
Re: Оптимизация кода - by Alexander_Petrov - 08.03.2013, 17:19
Re: Оптимизация кода - by White_116 - 08.03.2013, 17:25
Re: Оптимизация кода - by Alexander_Petrov - 08.03.2013, 17:33
Re: Оптимизация кода - by White_116 - 08.03.2013, 17:40
Re: Оптимизация кода - by Alexander_Petrov - 08.03.2013, 17:45
Re: Оптимизация кода - by White_116 - 08.03.2013, 18:03
Re: Оптимизация кода - by OKStyle - 20.03.2013, 15:16
Re: Оптимизация кода - by Stepashka - 20.03.2013, 16:13
Re: Оптимизация кода - by exdev - 26.03.2013, 04:53
Re: Оптимизация кода - by Stepashka - 26.03.2013, 05:14
Re: Оптимизация кода - by exdev - 26.03.2013, 05:28
Re: Оптимизация кода - by Stepashka - 26.03.2013, 05:31
Re: Оптимизация кода - by Slava[LSW] - 26.03.2013, 07:54
Re: Оптимизация кода - by Alexander_Petrov - 26.03.2013, 08:42
Re: Оптимизация кода - by Stepashka - 26.03.2013, 09:32
Re: Оптимизация кода - by Slava[LSW] - 26.03.2013, 10:45
Re: Оптимизация кода - by White_116 - 26.03.2013, 11:01
Re: Оптимизация кода - by Stepashka - 26.03.2013, 11:25
Re: Оптимизация кода - by Slava[LSW] - 26.03.2013, 11:28
Re: Оптимизация кода - by White_116 - 26.03.2013, 11:37
Re: Оптимизация кода - by eakwarp - 26.03.2013, 13:36
Re: Оптимизация кода - by Jon_De - 26.03.2013, 14:45
Re: Оптимизация кода - by Stepashka - 26.03.2013, 14:51
Re: Оптимизация кода - by XemyL - 26.03.2013, 14:56
Re: Оптимизация кода - by Stepashka - 26.03.2013, 15:01
Re: Оптимизация кода - by XemyL - 26.03.2013, 15:24
Re: Оптимизация кода - by Stepashka - 26.03.2013, 15:26
Re: Оптимизация кода - by AirKite - 26.03.2013, 20:37
Re: Оптимизация кода - by Slava[LSW] - 27.03.2013, 02:14
Re: Оптимизация кода - by NameNone - 27.03.2013, 02:48
Re: Оптимизация кода - by raider19rus - 27.03.2013, 03:24
Re: Оптимизация кода - by Stepashka - 27.03.2013, 04:45
Re: Оптимизация кода - by Xotab - 27.03.2013, 08:02
Re: Оптимизация кода - by Slava[LSW] - 27.03.2013, 08:07
Re: Оптимизация кода - by AirKite - 27.03.2013, 10:19
Re: Оптимизация кода - by OKStyle - 30.03.2013, 07:36
Re: Оптимизация кода - by AirKite - 30.03.2013, 09:41
Re: Оптимизация кода - by Alexander_Petrov - 30.03.2013, 09:49
Re: Оптимизация кода - by Fireline - 30.03.2013, 10:05
Re: Оптимизация кода - by Alexander_Petrov - 30.03.2013, 10:10
Re: Оптимизация кода - by OKStyle - 31.03.2013, 04:48
Re: Оптимизация кода - by Stepashka - 31.03.2013, 04:54
Re: Оптимизация кода - by BJIADOKC - 27.08.2013, 18:21
Re: Оптимизация кода - by Xotab - 18.11.2013, 10:54
Re: Оптимизация кода - by Stepashka - 18.11.2013, 11:01
Re: Оптимизация кода - by Urukhay - 01.02.2014, 12:28
Re: Оптимизация кода - by Romz - 01.02.2014, 12:38
Re: Оптимизация кода - by -Stranger- - 01.02.2014, 12:52
Re: Оптимизация кода - by Diman777 - 01.02.2014, 13:20
Re: Оптимизация кода - by Stepashka - 01.02.2014, 13:37
Re: Оптимизация кода - by Urukhay - 01.02.2014, 14:06
Re: Оптимизация кода - by Eims - 01.02.2014, 14:12
Re: Оптимизация кода - by stabker - 01.02.2014, 14:35
Re: Оптимизация кода - by Kuroki - 22.03.2014, 10:08
Re: Оптимизация кода - by Eims - 22.03.2014, 10:26
Re: Оптимизация кода - by Kuroki - 22.03.2014, 10:28
Re: Оптимизация кода - by OKStyle - 22.03.2014, 12:19
Re: Оптимизация кода - by Jon_De - 22.03.2014, 12:43
Re: Оптимизация кода - by Diman777 - 22.03.2014, 13:26
Re: Оптимизация кода - by Kuroki - 22.03.2014, 17:38
Re: Оптимизация кода - by stabker - 22.03.2014, 18:00
Re: Оптимизация кода - by Kuroki - 22.03.2014, 18:17
Re: Оптимизация кода - by stabker - 22.03.2014, 18:24
Re: Оптимизация кода - by Kuroki - 22.03.2014, 18:34
Re: Оптимизация кода - by stabker - 22.03.2014, 18:56
Re: Оптимизация кода - by OKStyle - 22.03.2014, 21:54
Re: Оптимизация кода - by OstGot - 18.08.2015, 09:00
Re: Оптимизация кода - by White_116 - 18.08.2015, 13:55
Re: Оптимизация кода - by xJester - 18.08.2015, 14:12
Re: Оптимизация кода - by IIOl - 20.08.2015, 20:33
Re: Оптимизация кода - by ea8de1 - 28.08.2015, 11:58
Re: Оптимизация кода - by White_116 - 28.08.2015, 14:37
Re: Оптимизация кода - by ea8de1 - 28.08.2015, 14:45
Re: Оптимизация кода - by OKStyle - 28.08.2015, 16:02
Re: Оптимизация кода - by ea8de1 - 28.08.2015, 16:44
Re: Оптимизация кода - by Diman777 - 15.01.2016, 03:09
Re: Оптимизация кода - by x_O - 15.01.2016, 10:30
Re: Оптимизация кода - by Stepashka - 15.01.2016, 10:40
Re: Оптимизация кода - by x_O - 15.01.2016, 10:55
Re: Оптимизация кода - by Stepashka - 15.01.2016, 11:13
Re: Оптимизация кода - by Romz - 15.01.2016, 11:38
Re: Оптимизация кода - by eakwarp - 15.01.2016, 14:03
Re: Оптимизация кода - by White_116 - 15.01.2016, 16:48
Re: Оптимизация кода - by cm666 - 15.01.2016, 21:02
Re: Оптимизация кода - by x_O - 15.01.2016, 23:10
Re: Оптимизация кода - by cm666 - 16.01.2016, 07:11

Forum Jump:


Users browsing this thread: 5 Guest(s)