Technical data

Programming Features
5.4 Compaq C Run-Time Library Enhancements
All C RTL functions that accept or report full file specifications will process
file specifications up to 4095 bytes long, subject to the rules defined for the
media format. For file specifications in OpenVMS format, there are no special
restrictions. In situations where a full file specification cannot be reported
because the buffer is too short, the function attempts to report the abbreviated
name.
UNIX file names have the following restrictions:
Names containing special characters, such as multiple periods, caret, or
multinational characters, may be rejected.
A function call may report failure if the output buffer is not large enough
to receive the full name. For OpenVMS style names, the reported name
would contain a file ID-abbreviated name. There is no representation of file
ID-abbreviated names defined for UNIX.
5.4.4 Compaq C RTL Supports Exact Case Argv Arguments (Alpha)
Nonquoted command-line arguments passed to C and C++ programs (argv
arguments) can now optionally have their case preserved, rather than being
lowercased as in previous versions.
By default, this feature is disabled.
To enable this case preservation feature, define the logical name DECC$ARGV_
PARSE_STYLE to "ENABLE" and set the process-level DCL parse style flag to
"EXTENDED" in the process running the program:
$ DEFINE DECC$ARGV_PARSE_STYLE ENABLE
$ SET PROCESS/PARSE_STYLE=EXTENDED
Enabling this feature also ensures that the image name returned in argv[0] is
also case-preserved.
To disable this feature, use any one of the following commands:
$ SET PROCESS/PARSE_STYLE=TRADITIONAL
or
$ DEFINE/SYSTEM DECC$ARGV_PARSE_STYLE DISABLE
or
$ DEASSIGN DECC$ARGV_PARSE_STYLE
The value of the DECC$ARGV_PARSE_STYLE logical is case-insensitive.
5.4.5 Compaq C RTL Can Implicitly Open Files for Shared Access
The Compaq C RTL was enhanced to open all files for shared access as if the
"shr=del,get,put,upd" option was specified in the
open*
or
creat
call.
To enable this feature, define the logical name DECC$FILE_SHARING to the
value "ENABLE". The value is case-insensitive.
DECC$FILE_SHARING is checked only once per image activation, not on a
file-by-file basis.
5–4 Programming Features