免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1353 | 回复: 0
打印 上一主题 下一主题

Linux C函数详解 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-12 17:36 |只看该作者 |倒序浏览
这篇文章主要描述Linux编程中常遇到的函数的信息,包括函数行为描述,参数描述,示例等几个方面。我将不断充实这篇文章,争取可以囊括大部分Linux下常用的编程函数。
环境变量函数
[color="#336600"]getenv(取得环境变量内容)
表头文件  #include

定义函数  char * getenv(const char *varname);

函数说明  getenv()用来取得参数name环境变量的内容。参数name为环境变量的名称,如果该变量存在则会返回指向该内容的指针。环境变量的格式为name=value。
参数     name是一个包含环境变量名称的非空字符串。

返回值  执行成功则返回指向该内容的指针,找不到符合的环境变量名称则返回NULL。
相关函数  putenv,setenv,unsetenv
例子:
/* getenv example: getting path */
#include
#include
int main ()
{
  char * buffer;
  buffer = getenv ("PATH");
  if (buffer!=NULL)
    printf ("Current path is: %s",buffer);
  return 0;
}
[color="#336600"]putenv(改变或增加环境变量)
表头文件  #include

定义函数  int putenv(const char * string);

函数说明  putenv()用来改变或增加环境变量的内容。
参数     string的格式为name=value,如果该环境变量原先存在,则变量内容会依参数string改变,否则此参数内容会成为新的环境变量。

返回值  执行成功则返回0,有错误发生则返回-1。
错误代码  ENOMEM 内存不足,无法配置新的环境变量空间。
相关函数  getenv,setenv,unsetenv
例子:
/* putenv example */
#include
#include
int main ()
{
  char * buffer ;
  buffer = getenv ("RESOURCES");
  if (buffer==NULL)
  {
    putenv ("RESOURCES=www.cplusplus.com");
    puts ("environment variable successfully set");
  }
  else puts ("environment variable already existed");
  return 0;
}
[color="#336600"]setenv(改变或增加环境变量)  

表头文件  #include

定义函数  int setenv(const char *name,const char * value,int overwrite);

函数说明  setenv()用来改变或增加环境变量的内容。参数name为环境变量名称字符串。

参数  value则为变量内容,参数overwrite用来决定是否要改变已存在的环境变量。如果overwrite不为0,而该环境变量原已有内容,则原内容会被改为参数value所指的变量内容。如果overwrite为0,且该环境变量已有内容,则参数value会被忽略。

返回值  执行成功则返回0,有错误发生时返回-1。

错误代码  ENOMEM 内存不足,无法配置新的环境变量空间
相关函数  getenv,putenv,unsetenv
例子:
#include
#include
main()
{
char * p;
if((p=getenv(“MYVAR”)))
printf(“MYVAR =%s
”,p);
setenv(“MYVAR”,”test”,1);
printf(“MYVAR=%s
”,getenv(“MYVAR”));
}
[color="#336600"]unsetenv(删除一个环境变量)  

表头文件  #include

定义函数  int setenv(const char *name);

函数说明  unsetenv()用来删除一个名为name的环境变量。
参数name为环境变量名称字符
返回值  执行成功则返回0,失败返回-1
例子:
#include
#include
main()
{
char * p;
if((p=getenv(“MYVAR”)))
printf(“MYVAR =%s
”,p);
setenv(“MYVAR”,”test”,1);
printf(“MYVAR=%s
”,getenv(“MYVAR”));
unsetenv(“MYVAR”);
printf(“MYVAR=%s
”,getenv(“MYVAR”));
}


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/3108/showart_61142.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP