gpt4 book ai didi

c++ - 如何将 boost options_description 与十六进制输入一起使用?

转载 作者:可可西里 更新时间:2023-11-01 17:56:27 26 4
gpt4 key购买 nike

我想有两个选项供程序运行,起始地址和结束地址,以便程序选项如下:

--start_address 0xc0000000 --end_address 0xffffffff

options_description 是否可以接受这样的十六进制输入?我是否必须将输入视为字符串并将它们转换为十六进制值。我现在有这个:

  po::options_description desc("Allowed options");

desc.add_options()
("help,h", "display this help message")
("path,p", po::value<std::string>(), "Executable file path")
("start_address,s", po::value<std::string>(), "Start address")
("end_address,e", po::value<std::string>(), "End address")
;

boost::lexical_cast 可以做这样的转换吗?

最佳答案

好的。刚刚发现我可以使用 options_description 输入选项,然后使用 std::stringstream 解析选项以转换为十六进制数,如下所示

  boost::uint32_t start_address;
std::stringstream interpreter;

interpreter << std::hex << vm["start_address"].as<std::string>();

interpreter >> start_address;

关于c++ - 如何将 boost options_description 与十六进制输入一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2743439/

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