gpt4 book ai didi

c++ - 如何测试 "binary"或 unset char*?

转载 作者:太空宇宙 更新时间:2023-11-04 16:19:04 27 4
gpt4 key购买 nike

编辑:添加了一些对问题条件有很大影响的精度,请在判断答案之前注意这一点。

我得到一个 const char* 形式的环境变量。环境变量可以是

  • 取消设置(我的意思是,如果环境变量是从批处理环境中获取的,set MyBinaryEnvVar=)
  • 设为0
  • 设置为 1

因此 const char* 形式将是

  • ""
  • “0”
  • “1”

我想用一个衬里测试它,Unset 和“0”未通过测试,“1”通过测试。所以像:

if(getEnvVar("MyBinaryEnvVar")) {dontWorry();}
else {beHappy();}

getEnvVar 返回一个 const char* 。

在 VisualStudio 2010 上测试表明 envVar 的三个值通过了测试,所以
如果(“”)<==>如果(“0”)<==>如果(“1”)<==>真

谢谢

最佳答案

请参阅 strcmp() 进行字符串比较。 getenv() 返回的所有值都是字符串。您只需要一个 if 语句。

请注意,您的逻辑遗漏了“其他”情况(当值真正未设置时(即 getenv() 返回 NULL)或者它不是 3以上值。

关于c++ - 如何测试 "binary"或 unset char*?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19323076/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com