Next Prev Up Top Contents Index

decf-pointer

Function
Summary

Decreases the address held by a pointer.

Package

fli

Signature

decf-pointer pointer &optional delta => number

Arguments

pointer

An FLI pointer.

delta

An integer. The default is 1.

Values

number

The number of bytes the pointer address has decreased by since it was created.

Description

The function decf-pointer decreases the address held by the pointer. If delta is not given the address is decreased by the size of the type pointed to by the pointer. The address can be decreased by a multiple of the size of the type by specifying a value for delta .

The function decf-pointer is often used to move a pointer through an array of values.

Example

In the following example an array with 10 entries is defined. A copy of the pointer to the array is made, and is incremented and decremented.

(setq array-obj
      (fli:allocate-foreign-object :type :int
        :nelems 10
        :initial-contents '(0 1 2 3 4 5 6 7 8 9)))
(setq point1 (fli:copy-pointer array-obj))
(dotimes (x 9)
  (fli:incf-pointer point1)
  (print (fli:dereference point1)))
(dotimes (x 9)
  (fli:decf-pointer point1)
  (print (fli:dereference point1)))
See Also

incf-pointer


LispWorks Foreign Language Interface User Guide and Reference Manual - 14 Dec 2001

Next Prev Up Top Contents Index