Rust 是否可以在编译时从环境变量初始化变量?
我想在编译期间初始化一个变量。例如,我想在编译代码时将变量Rust 是否可以在编译时从环境变量初始化变量?,rust,compile-time-constant,Rust,Compile Time Constant,我想在编译期间初始化一个变量。例如,我想在编译代码时将变量VAR初始化为VALUE: match env::var("VAR") { Ok(value) => println!("Ok {}", value), Err(e) => println!("Error ({})", e), }; 但是,我希望在no_std上下文中执行此操作,因此,我无法使用std::env访问环境。是否可以这样做?是否在编译时对
VAR
初始化为VALUE
:
match env::var("VAR") {
Ok(value) => println!("Ok {}", value),
Err(e) => println!("Error ({})", e),
};
但是,我希望在no_std
上下文中执行此操作,因此,我无法使用std::env
访问环境。是否可以这样做?是否在编译时对进行评估:
从当前进程获取环境变量键
您正在寻找/或/是否在编译时得到评估:
从当前进程获取环境变量键
您正在查找/或/“rustc env=VAR=VALUE表示指定的环境变量将添加到编译器运行所在的环境中。然后,该值可由已编译机箱中的env!宏检索。”从复制。我有点困惑。“编译器在其中运行的环境”是什么意思?@Dragonlight您引用的内容似乎与我一致:由
env检索代码>宏。“编译器在其中运行的环境”意味着“编译器运行时设置的环境变量”(与“生成的程序运行时”相反)。“rustc env=VAR=VALUE表示指定的环境变量将添加到运行编译器的环境中。然后该值可由env检索!已编译板条箱中的宏。“复制自。我有点困惑。“编译器在其中运行的环境”是什么意思?@Dragonlight您所引用的内容似乎与我一致:由env!
宏检索。“编译器在其中运行的环境”将指“编译器运行时设置的环境变量”(与当生成的程序运行时”)。