美文网首页
vscode CMake Tools 传递命令行参数

vscode CMake Tools 传递命令行参数

作者: book_02 | 来源:发表于2023-10-09 15:34 被阅读0次

    vscode调试C++程序时,有时需要给程序传递命令行参数。

    通常做法是配置launch.json文件中要调试程序的args字段。
    但是设置tasks.jsonlaunch.json的方式不如使用CMake Tools插件调试运行程序方便。

    CMake Tools插件调试运行程序可以在多个cmake的target中切换,省去了写那些配置的繁琐步骤。

    1. 设置方法: 设置 cmake.debugConfig 的 args字段

    注意要是去设置Workspacesettings.json,因为每个项目需要的设置的命令行参数不一样。

    如果设置Usersettings.json会对其他项目产生影响。

    {
        "cmake.debugConfig": {
            "args": ["arg1", "arg2"]
        }
    }
    

    这里只配置了cmake.debugConfig中的args字段,其他字段省去了,因为我们当前只需要设置命令行参数。

    虽然名字叫debugConfig,这里传递的命令行参数在ReleaseDebug模式下都是有效的。

    2. 例子

    假设main.cpp需要用到命令行参数

    #include <iostream>
    
    int main(int argc, char **argv)
    {
        std::cout << argc << std::endl;
        std::cout << argv[1] << std::endl;
    
        return 0;
    }
    

    打开Workspacesettings.json

    添加命令行参数如下:

    {
        "cmake.debugConfig": {
            "args": [
                "arg1",
                "arg2"
            ]
        }
    }
    

    运行程序,结果如下,符合预期

    3
    arg1
    

    相关文章

      网友评论

          本文标题:vscode CMake Tools 传递命令行参数

          本文链接:https://www.haomeiwen.com/subject/onmibdtx.html