native-to-string

$Revision: 1.1.2.2 $

Function

Package: EXCL

Arguments: (address &key string make-string? length (external-format :default))

There are two return values, the string and the number of characters copied.

This function converts (according to the external-format argument) and copies the string data from the memory location specified by address into a lisp string. The string is returned. The number of characters copied to the string is returned as the second value.

If the string argument is specified, then the string data will be copied into this argument. If a string is specified by string and it is not long enough, an error is signaled unless make-string? is specified as non-nil, in which case a new string is created and returned (just as if string was unspecified). If string is not specified, make-string? is ignored (a new string is always created).

If the length argument is specified, then this argument's value specifies the number of bytes to copy.

By default, this function will convert from the native representation assumed for foreign function strings. Under International Allegro CL, this conversion is to EUC (ie, external-format :euc) under Unix, and to Windows MultiByte (ie, external-format :mb) under Windows. Overriding the default external-format is not supported in this Allegro CL release. When :default is specified, the value of excl:*default-external-format* is used.

International Allegro CL is described in iacl.htm. The foreign functions implementation is described in foreign_functions.htm.

The general documentation description is in introduction.htm. The index in index.htm.

Copyright (C) 1998-1999, Franz Inc., Berkeley, CA. All Rights Reserved.