QB64.com

QB64 is a modern extended BASIC programming language that retains QBasic/QuickBASIC 4.5 compatibility and compiles native binaries for Windows, Linux, and macOS.

The OCT$ function returns the base-8 octal representation of an INTEGER, LONG or _INTEGER64 value as a STRING.

Syntax

result$ = OCT$(number)

Parameters

Description

Example(s)

Outputs all of the decimal, hexadecimal and octal digits:


LOCATE 2, 20: PRINT " Decimal | Hexadecimal | Octal "
LOCATE 3, 20: PRINT "---------+-------------+-------"
        template$ = "    ##   |     \\      |   ##  "

FOR n% = 0 TO 15
  LOCATE 4 + n%, 20: PRINT USING template$; n%; HEX$(n%); VAL(OCT$(n%))
NEXT n%


Note: The actual octal value is converted by VAL directly back to a numerical value by not using the “&H” prefix.


          Decimal | Hexadecimal | Octal 
         ---------+-------------+-------
            0     |      0      |   0   
            1     |      1      |   1   
            2     |      2      |   2   
            3     |      3      |   3   
            4     |      4      |   4   
            5     |      5      |   5   
            6     |      6      |   6   
            7     |      7      |   7   
            8     |      8      |   10  
            9     |      9      |   11  
            10    |      A      |   12  
            11    |      B      |   13  
            12    |      C      |   14  
            13    |      D      |   15  
            14    |      E      |   16  
            15    |      F      |   17  

Example 2: Converting a octal value to decimal.


octvalue$ = OCT$(255)
PRINT "Oct: "; octvalue$
PRINT "Converting Oct value to Decimal:"; VAL("&O" + octvalue$)


Oct: 377
Converting Oct value to Decimal: 255

See Also