Linux系统C程序员的环境变量和环境表
来源:互联网 发布:淘宝商城童装毛衣女孩 编辑:程序博客网 时间:2024/06/05 05:35
C程序员的环境变量和环境表
C语言中环境存储在字符指针数组中,就是环境表;
环境表可以看成是二级指针,用来指定环境变量;
char *s[5]; //字符指针数组,元素是字符指针;
char **s; //二级指针
环境表的使用只需要写上 extern char** environ; //外部全局变量
environ就是环境表的首地址;
echo $OLDPWD
指针的回顾
指针就是一个存储另一个变量地址的变量;
int i = 10;
int *pi = &i;
pi就是指针,i就是普通整型变量;
*pi == i
&i == pi
指针的运算
支持加法和减法,但加法只能加上整数;
pi + 1 就是移动指针, 移动的字节数由指向变量的类型决定;
如果pi是 int *, 移动4个字节;
如果是 char *, 移动1个字节;
如果pi是 char **, 移动 char*的大小,即4个字节;
sizeof(指向的类型);
*p++ 先做p++再取*;但后++会在语句结束时才做;
(*p)++ 先取*再++;
如果 char** p, (*p)++导致*p移动一个字节,p不动;
char *str[5]; //指针数组,存放指针的数组(char *)str[5];
char (*str)[5]; //数组指针,指向数组的指针;
一定要多练
C语言中环境存储在字符指针数组中,就是环境表;
环境表可以看成是二级指针,用来指定环境变量;
char *s[5]; //字符指针数组,元素是字符指针;
char **s; //二级指针
环境表的使用只需要写上 extern char** environ; //外部全局变量
environ就是环境表的首地址;
echo $OLDPWD
指针的回顾
指针就是一个存储另一个变量地址的变量;
int i = 10;
int *pi = &i;
pi就是指针,i就是普通整型变量;
*pi == i
&i == pi
指针的运算
支持加法和减法,但加法只能加上整数;
pi + 1 就是移动指针, 移动的字节数由指向变量的类型决定;
如果pi是 int *, 移动4个字节;
如果是 char *, 移动1个字节;
如果pi是 char **, 移动 char*的大小,即4个字节;
sizeof(指向的类型);
*p++ 先做p++再取*;但后++会在语句结束时才做;
(*p)++ 先取*再++;
如果 char** p, (*p)++导致*p移动一个字节,p不动;
char *str[5]; //指针数组,存放指针的数组(char *)str[5];
char (*str)[5]; //数组指针,指向数组的指针;
一定要多练
/* * C程序员的环境变量与环境表练习 */#include <stdio.h>#include <string.h>int main() { extern char **environ; //全局变量,改变了有影响 char **p = environ; //p是局部变量,改变了无影响 //p是字符指针数组; //练习:写一个循环打印所有环境变量(数组元素),数组以NULL结束 while (*p /* != NULL */ ) { //可以省略,C程序效率十分重要 printf("%s\n", *p); /* printf("\t%p\n", p); */ p++; } //写一个循环,把LANG的值取出来,存入value中 //提示:比较字符串的前n个字符strncmp(); p = environ; //指针回到开始; char value[100] = { }; while (*p) { if (!strncmp(*p, "LANG=", 5)){ /* printf("%s\n", *p); */ strcpy(value, (*p) + 5); break; } p++; } printf("value = %s\n", value); return 0;}
0 0
- Linux系统C程序员的环境变量和环境表
- linux系统环境变量和用户环境变量
- Linux系统C语言操作环境变量的函数
- linux c -- 环境变量和参数
- CTDP linux 程序员手册 C和C++编程(4)Linux POSIX 系统的兼容型
- linux系统查看和修改PATH环境变量的方法
- linux环境安装jdk和配置环境变量
- Linux环境-环境变量、时间和日期
- 配置JAVA环境的时候,环境变量中administrator的用户变量和系统变量的区别?
- Linux环境下环境变量的设置
- 黑马程序员_一 【基础知识】【Java环境搭建】和【环境变量】
- linux里常用的系统变量(注意’系统变量‘和’环境变量‘的差别)
- Linux系统下搭建C/C++开发的IDE环境
- Linux系统上搭建C/C++的IDE开发环境
- 十二. Linux系统的环境变量的功能
- linux系统环境变量及用户环境变量的配置
- Unix/Linux环境C编程入门教程(32) 环境变量那些事儿
- Linux系统Shell的环境变量配置文件介绍
- 排序算法(七)希尔排序
- SDKD Summer Team Contest S
- UML——类图
- Libgdx 之 饱和度与色相的渲染
- HDOJ 2824 The Euler function(欧拉函数+打表法)
- Linux系统C程序员的环境变量和环境表
- HDU 5399(Too Simple-判定映射)
- 每天进步一点点——Linux中的文件描述符与打开文件之间的关系
- OL记载Arcgis Server切片
- Linux系统C语言操作环境变量的函数
- Round A APAC Test 2016 Problem A. Googol String
- HOJ 13415 Website Tour(强连通缩点+多重背包dp)
- Nginx从入门到精通
- hdu 4135,数学-容斥