Content-type: text/html Man page of Intro_jfp


Section: Introduction to Library Functions (3)
Updated: 10 Jan 2003
Index Return to Main Contents


Intro_jfp, intro_jfp - introduction to JFP functions and libraries  


This section describes JFP functions found in various libraries, other than those functions that directly invoke UNIX which are described in Section 2 of man pages section 1: User Commands. Function declarations can be obtained from the #include files indicated on each page.  


A character is any bit pattern able to fit into a byte on the machine.

The null character is a character with value 0, conventionally represented in the C language as \0. A character array is a sequence of characters. A null-terminated character array (a string) is a sequence of characters, the last of which is the null character. The null string is a character array containing only the terminating null character. A NULL pointer is the value that is obtained by casting 0 into a pointer. C guarantees that this value will not match that of any legitimate pointer, so many functions that return pointers return NULL to indicate an error. The macro NULL is defined in <stdio.h>. Types of the form size_t are defined in the appropriate headers.  

MT-Level of Libraries

See attributes(5) for descriptions of library MT-Levels.  


INCDIR usually, /usr/include

LIBDIR usually, /usr/lib (32-bit) or /usr/lib/sparcv9 (64-bit)









ar(1), cc(1B), ld(1), nm(1),


intro(3), stdio(3C)

libadm(3LIB), libc(3LIB), libelf(3LIB), libdl(3LIB), libkvm(3LIB), libmapmalloc(3LIB), libmp(3LIB), libnsl(3LIB), librac(3LIB), libresolv(3LIB), librpcsvc(3LIB), libsocket(3LIB), libpthread(3THR), libthread(3THR), libxfn(3LIB), libxnet(3LIB)

attributes(5), standards(5)

Linker and Libraries Guide

Profiling Tools

 ANSI C Programmer's Guide   


For functions that return floating-point values, error handling varies according to compilation mode. Under the -Xt (default) option to cc these functions return the conventional values 0, ±HUGE or NaN when the function is undefined for the given arguments or when the value is not representable. In the -Xa and -Xc compilation modes, ±HUGE_VAL is returned instead of ±HUGE. (HUGE_VAL and HUGE are defined in math.h to be infinity and the largest-magnitude single-precision number, respectively.)  


When compiling a multithreaded application, either the _POSIX_C_SOURCE, _POSIX_PTHREAD_SEMANTICS, or _REENTRANT flag must be defined on the command line. This enables special definitions for functions only applicable to multithreaded applications. For POSIX.1c-conforming applications, define the _POSIX_C_SOURCE flag to be >= 199506L:

cc [flags ]file... -D_POSIX_C_SOURCE=199506L -lpthread

For POSIX behavior with the Solaris fork() and fork1() distinction, compile as follows:

cc [flags ]file... -D_POSIX_PTHREAD_SEMANTICS -lthread

For Solaris behavior, compile as follows:

cc [flags ]file... -D_REENTRANT -lthread

When building a singlethreaded application, the above flag should be undefined. This generates a binary that is executable on previous Solaris releases, which do not support multithreading.

Unsafe interfaces should be called only from the main thread to ensure the application's safety.

MT-Safe interfaces are denoted in the NOTES section of the functions and libraries man pages. If a man page does not state explicitly that an interface is MT-Safe, the user should assume that the interface is unsafe.  


Be sure to have set the environment variable LD_BIND_NOW to a non-NULL value to enable early binding. Refer to the "When Relocations are Performed" chapter in Linker and Libraries Guide for additional information.  


None of the functions, external variables, or macros should be redefined in the user's programs. Any other name may be redefined without affecting the behavior of other library functions, but such redefinition may conflict with a declaration in an included header.

The headers in INCDIR provide function prototypes (function declarations including the types of arguments) for most of the functions listed in this manual. Function prototypes allow the compiler to check for correct usage of these functions in the user's program.

The lint program checker may also be used and will report discrepancies even if the headers are not included with #include statements. Definitions for Sections 2, 3C, and 3S are checked automatically. Other definitions can be included by using the -l option to lint. (For example, -lm includes definitions for libm.) Use of lint is highly recommended. See the lint chapter in Profiling Tools.

Users should carefully note the difference between STREAMS and stream. STREAMS is a set of kernel mechanisms that support the development of network services and data communication drivers. It is composed of utility routines, kernel facilities, and a set of data structures. Astream is a file with its associated buffering. It is declared to be a pointer to a type FILE defined in <stdio.h>.

In detailed definitions of components, it is sometimes necessary to refer to symbolic names that are implementation-specific, but which are not necessarily expected to be accessible to an application program. Many of these symbolic names describe boundary conditions and system limits.

In this section, for readability, these implementation-specific values are given symbolic names. These names always appear enclosed in curly brackets to distinguish them from symbolic names of other implementation-specific constants that are accessible to application programs by headers. These names are not necessarily accessible to an application program through a header, although they may be defined in the documentation for a particular system.

In general, a portable application program should not refer to these symbolic names in its code. For example, an application program would not be expected to test the length of an argument list given to a routine to determine if it was greater than {ARG_MAX}.  


Name Description

Intro_jfp(3) introduction to JFP functions and libraries

atojis(3x) See jconv(3X)

ceuctoibmj(3x) See ibmjcode(3X)

cibmjtoeuc(3x) See ibmjcode(3X)

cjistosj(3x) See jisconv(3X)

cjistouj(3x) See jisconv(3X)

csjtojis(3x) See jisconv(3X)

csjtouj(3x) See jisconv(3X)

cujtojis(3x) See jisconv(3X)

cujtosj(3x) See jisconv(3X)

euctoibmj(3x) See ibmjcode(3X)

ibmjcode(3X) code conversion for IBM Japanese code

ibmjtoeuc(3x) See ibmjcode(3X)

isj1bytekana(3x) See jctype(3X)

isjalpha(3x) See jctype(3X)

isjdigit(3x) See jctype(3X)

isjgen(3x) See jctype(3X)

isjgreek(3x) See jctype(3X)

isjhankana(3x) See jctype(3X)

isjhira(3x) See jctype(3X)

isjis(3x) See jctype(3X)

isjkanji(3x) See jctype(3X)

isjkata(3x) See jctype(3X)

isjline(3x) See jctype(3X)

isjlower(3x) See jctype(3X)

isjparen(3x) See jctype(3X)

isjpunct(3x) See jctype(3X)

isjrussian(3x) See jctype(3X)

isjsci(3x) See jctype(3X)

isjspace(3x) See jctype(3X)

isjspecial(3x) See jctype(3X)

isjunit(3x) See jctype(3X)

isjupper(3x) See jctype(3X)

jconv(3X) Wide Character conversion macros

jctype(3X) Wide Character classification macros and functions

jis7tosj(3x) See jisconv(3X)

jis7touj(3x) See jisconv(3X)

jis8tosj(3x) See jisconv(3X)

jis8touj(3x) See jisconv(3X)

jisconv(3X) code conversion

jistoa(3x) See jconv(3X)

jistosj(3x) See jisconv(3X)

jistouj(3x) See jisconv(3X)

kutentojis(3x) See jconv(3X)

sjtojis(3x) See jisconv(3X)

sjtojis7(3x) See jisconv(3X)

sjtojis8(3x) See jisconv(3X)

sjtouj(3x) See jisconv(3X)

tojhira(3x) See jconv(3X)

tojkata(3x) See jconv(3X)

tojlower(3x) See jconv(3X)

tojupper(3x) See jconv(3X)

toujis(3x) See jconv(3X)

ujtojis(3x) See jisconv(3X)

ujtojis7(3x) See jisconv(3X)

ujtojis8(3x) See jisconv(3X)

ujtosj(3x) See jisconv(3X)

wctrans_ja(3C) Wide character conversion for the Japanese locale

wctype_ja(3C) Define a character class for the Japanese locale

wstrcat(3x) See wstring(3X)

wstrchr(3x) See wstring(3X)

wstrcmp(3x) See wstring(3X)

wstrcpy(3x) See wstring(3X)

wstrcspn(3x) See wstring(3X)

wstrdup(3x) See wstring(3X)

wstring(3X) wide character string operations

wstrlen(3x) See wstring(3X)

wstrncat(3x) See wstring(3X)

wstrncmp(3x) See wstring(3X)

wstrncpy(3x) See wstring(3X)

wstrpbrk(3x) See wstring(3X)

wstrrchr(3x) See wstring(3X)

wstrspn(3x) See wstring(3X)

wstrtod(3X) convert a wide character string to double-precision floating-point number

wstrtok(3x) See wstring(3X)

wstrtol(3X) convert a wide character string to integer



MT-Level of Libraries

This document was created by man2html, using the manual pages.
Time: 02:39:03 GMT, October 02, 2010