Fluorite | Level 6

## What does the number after ARRAY statement mean

Hi there,

Just a silly question, the code is like: array cnt_ir_a{5} 8 cnt_ir_1-cnt_ir_5;

I am just wondering what does the number "8" mean here, is that the length?

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions

## Re: What does the number after ARRAY statement mean

Hi @ForrestYao,

In addition to the length (in bytes) of each of the five variables it also indicates their type: numeric (for character variables it would be \$8 or \$1 or ...) -- like in a LENGTH statement.

In certain situations the "default length 8" would not apply and the "8" would be required to ensure length 8. Example:

``````data have;
array a[3] 4 cnt_ir_1-cnt_ir_3;
run;

data want;
array cnt_ir_a{5} cnt_ir_1-cnt_ir_5;
set have;
run;``````

Without the length specification in the second ARRAY statement the first three variables inherit their length 4 from dataset HAVE.

2 REPLIES 2
Super User

## Re: What does the number after ARRAY statement mean

@ForrestYao wrote:

Hi there,

Just a silly question, the code is like: array cnt_ir_a{5} 8 cnt_ir_1-cnt_ir_5;

I am just wondering what does the number "8" mean here, is that the length?

Thanks

Yes the 8 is the length, not needed as would be the default for numeric variables.

## Re: What does the number after ARRAY statement mean

Hi @ForrestYao,

In addition to the length (in bytes) of each of the five variables it also indicates their type: numeric (for character variables it would be \$8 or \$1 or ...) -- like in a LENGTH statement.

In certain situations the "default length 8" would not apply and the "8" would be required to ensure length 8. Example:

``````data have;
array a[3] 4 cnt_ir_1-cnt_ir_3;
run;

data want;
array cnt_ir_a{5} cnt_ir_1-cnt_ir_5;
set have;
run;``````

Without the length specification in the second ARRAY statement the first three variables inherit their length 4 from dataset HAVE.

Discussion stats
• 2 replies
• 509 views
• 0 likes
• 3 in conversation