Linux的环境变量

Main函数的参数

在C和C++等编程语言中,main函数是程序的入口点,它通常有以下几种形式:

int main(void);
int main();
int main(int argc, char *argv[]);
int main(int argc, char **argv);

其中,最常用的是带有参数的形式:

int main(int argc, char *argv[]);

参数说明:

  1. argc (Argument Count)

    • 这是一个整数,表示传递给程序的命令行参数的数量。
    • argc至少为1,因为程序名本身就是第一个参数。
  2. argv (Argument Vector)

    • 这是一个指向字符数组的指针数组,每个元素都是一个字符指针,指向一个参数的字符串表示。
    • argv[0]是程序的名称或路径。
    • argv[1]argv[argc-1]是传递给程序的其他参数。

代码示例

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
    if (argc != 4) {
        printf("Usage:\n\t%s [-add|sub|mul|div] x y\n", argv[0]);
        return 1;
    }

    int x = atoi(argv[2]);
    int y = atoi(argv[3]);

    if (strcmp("-add", argv[1]) == 0) {
        printf("%d + %d = %d\n", x, y, x + y);
    }
    else if (strcmp("-sub", argv[1]) == 0) {
        printf("%d - %d = %d\n", x, y, x - y);
    }
    else if (strcmp("-mul", argv[1]) == 0) {
        printf("%d * %d = %d\n", x, y, x * y);
    }
    else if (strcmp("-div", argv[1]) == 0) {
        printf("%d / %d = %d\n", x, y, x / y);
    }
    else {
        printf("unknown\n");
    }

    return 0;
}

main 函数的参数解释

参数 argc
  • argc 是一个整数,表示传递给程序的命令行参数的数量。
  • 在这个程序中,期望 argc 的值是 4。
    • 第一个参数是程序的名称。
    • 第二个参数是操作类型(如 -add-sub-mul-div)。
    • 第三个参数是第一个操作数 x
    • 第四个参数是第二个操作数 y
参数 argv
  • argv 是一个字符指针数组,每个元素是一个字符串,表示一个命令行参数。
  • argv[0] 是程序的名称。
  • argv[1] 是操作类型。
  • argv[2] 是第一个操作数,作为字符串表示。
  • argv[3] 是第二个操作数,作为字符串表示。

执行结果

./myprocess -add 10 20
./myprocess -sub 30 10
./myprocess -mul 4 5
./myprocess -div 100 25


输出结果
10 + 20 = 30
30 - 10 = 20
4 * 5 = 20
100 / 25 = 4

Linux的环境变量

环境变量(Environment Variables)是在操作系统中用于存储配置信息的一种机制,它们影响进程的行为。环境变量是以键值对形式存储的,可以由操作系统和应用程序来读取和使用。

环境变量的特点

  • 全局性:环境变量在操作系统级别是全局的,可以在系统的任何地方访问。
  • 动态性:可以在程序运行时动态地修改。
  • 影响范围:环境变量可以影响到从父进程派生的子进程的行为。

常见的环境变量

  1. PATH:指定可执行文件的搜索路径。
  2. HOME:当前用户的主目录。
  3. USER:当前登录的用户名。
  4. SHELL:当前用户的默认命令解释器。
  5. LANG:定义系统的语言和字符编码。

查看和设置环境变量

在Linux/Unix系统中

查看环境变量

使用 echo 命令:

echo $PATH

使用 printenvenv 命令:

printenv
env

设置环境变量

临时设置:

export VAR_NAME=value

永久设置:编辑 ~/.bashrc~/.bash_profile 文件,添加以下行:

export VAR_NAME=value

使用环境变量的示例

C语言中的使用

在C语言中,可以使用 getenv 函数获取环境变量的值。以下是一个示例:

#include <stdio.h>
#include <stdlib.h>

int main() {
    const char* path = getenv("PATH");
    if (path != NULL) {
        printf("PATH: %s\n", path);
    } else {
        printf("PATH environment variable not found.\n");
    }
    return 0;
}

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值