DATA Step, Macro, Functions and more

Specifying the width of format/informat.

Posts: 29

Specifying the width of format/informat.

Hi All,

I have a query with regards to the width(10) specified in the below format lines.

format income comma10.2;

format taxpaid dollar10.2;

format savings euro10.2;

We know that the length of numeric variables is 8.

Then what exactly is this width,i could not understand.we can keep any value for width or how exactly i can understand this.

Please let me know you thoughts.

Thank youSmiley Happy

Super User
Super User
Posts: 8,127

Re: Specifying the width of format/informat.

Formats tell SAS how to display the value, not how to store it.  SAS only has two data types, floating point numbers and fixed length character strings.

So DOLLAR10.2 says to use 10 digits to display the value.

Try this little program.

data _null_;


  put x=

    / x= date9.

    / x= mmddyy10.

    / x= dollar10.2

    / x= time8.



Super Contributor
Posts: 308

Re: Specifying the width of format/informat.

To expand on what Tom is saying, the default length of a numeric variable is 8 bytes (not to be confused with 8 digits or 8 characters). The largest integer that SAS can store in a numeric variable with the default length of 8 (bytes) is 9,007,199,254,740,992.

Formats are just a way for SAS to display the stored numeric variable.

Super Contributor
Posts: 276

Re: Specifying the width of format/informat.


Default length for a Char variables in SAS is 8 Charecter's.but where as default length for a numeric variable is 8 Bytes,Not 8 digits.which means Apprx One Byte can Accommodates two or more digits..

As said by Fugue,we can store max 16 digits in a numeric variable .again number of digits we can store  is vary from One OS to Other OS.

Length in BytesSignificant Digits
Largest Integer
Represented Exactly

Source Smiley FrustratedASSupport.Com.



Ask a Question
Discussion stats
  • 3 replies
  • 1 like
  • 4 in conversation