繁体   English   中英

在C ++的命令行参数中传递\\

[英]Pass \ in command line arguments of C++

我正在使用一个C ++程序,其中命令行参数之一需要传递一个正则表达式。 例如: abc.exe --option ab\\[0\\]

当我从程序内部访问选项值时,它变成ab\\\\[0\\\\] ,这成为另一个正则表达式。 在程序内部,当我尝试使用boost::replace_all\\\\[替换为\\[ ,结果为[这也不是我想要的输出。

因此,有关如何通过命令行参数传递和保留\\[这的任何建议

您可以引用参数:

abc.exe --option "ab\[0\]"

或使用外壳转义序列:

abc.exe --option ab\\[0\\]

你尝试过这些吗?

Visual Studio如何显示符号是个问题。 当我查看该符号的ASCII码时,还好。 感谢@ScottK帮助我通过您的评论进行调试

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM