Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > P


HP-UX 11i Version 3: February 2007

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index


putenv() — change or add value to environment


#include <stdlib.h>

int putenv(const char *string);


string points to a string of the form name=value. putenv() makes the value of the environment variable name equal to value by altering an existing variable or creating a new one. In either case, the string pointed to by string becomes part of the environment, so altering the string changes the environment. The space used by string is no longer used once a new string-defining name is passed to putenv().



The LC_CTYPE category determines the interpretation of characters in string as single- and/or multi-byte characters.

International Code Set Support

Single- and multi-byte character code sets are supported.


putenv() returns non-zero if it was unable to obtain enough space via malloc() for an expanded environment, or if an invalid multibyte character sequence was encountered in the string argument; otherwise it returns zero.


putenv() fails under the following conditions:


There is insufficient space to expand the environment.


An invalid multibyte character sequence was encountered in the string argument.


putenv() manipulates the environment pointed to by environ, and can be used in conjunction with getenv(). However, envp (the third argument to main) is not changed.

This routine uses malloc() to enlarge the environment (see malloc(3C)).

After putenv() is called, environmental variables are not in alphabetical order.

A potential error is to call putenv() with an automatic variable as the argument, then exit the calling function while string is still part of the environment.


putenv(): AES, SVID2, SVID3, XPG2, XPG3, XPG4

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.