vscode 如何修改c/c++格式化风格,大括号不换行

简介: vscode 如何修改c/c++格式化风格,大括号不换行

在Visual Studio Code(VSCode)中,若要修改C++代码格式化的风格以实现大括号不换行,通常会借助于插件C/C++扩展中的ClangFormat配置。以下是具体的步骤:


  1. 确保已安装了C/C++扩展:
  • 打开VSCode的扩展市场(Extensions view),搜索"C/C++",确保已经安装了微软提供的"C/C++"插件。

配置ClangFormat:

  • 在VSCode中打开设置(快捷键 Ctrl + , 或者通过菜单 文件 > 首选项 > 设置 进入)。
  • 搜索 “clang format”,找到"C_Cpp: Clang_format_style"这一项。
  • 你可以直接在UI界面中编辑设置,或者点击“在settings.json中编辑”来手动添加或修改设置。
  1. 修改ClangFormat样式设置:
  • 在settings.json中添加或修改如下内容,确保BreakBeforeBraces设置为Attach(这将使得大括号不换行):
{
    "C_Cpp.clang_format_style": "{ BasedOnStyle: LLVM, BreakBeforeBraces: Attach }"
}
  • 根据你的偏好,可以选择其他基础样式(如Google、Chromium等),并根据需要调整其他格式化选项。
  1. 如果你希望在保存时自动格式化代码,请同时确认以下设置是启用的:
{
    "editor.formatOnSave": true,
    "[cpp]": {
        "editor.defaultFormatter": "ms-vscode.cpptools"
    }
}

这样一来,在你保存C++文件时,VSCode会根据上述ClangFormat配置自动格式化代码,其中的大括号将会保持在同一行上。

注:

BreakBeforeBraces 是 ClangFormat 配置中的一个选项,用于控制大括号在代码格式化时的换行风格。这个选项有以下几种可能的值:


  • Attach:大括号将紧跟在声明或语句之后,不换行。
  • Linux 或 GNU:类似 Attach,但在函数定义、类定义和命名空间定义的大括号前会有一行空行。
  • Stroustrup:类成员变量和函数定义的大括号前换行,其他情况(如 if、for 等)的大括号与前一行内容在同一行。
  • Allman:所有大括号前都换行。
  • Mozilla 或 WebKit:类似于 Allman,但函数参数列表后的大括号与函数名在同一行。

例如,在 Visual Studio Code 的 C/C++ 插件中配置为:

{
    "C_Cpp.clang_format_style": "{ BasedOnStyle: LLVM, BreakBeforeBraces: Attach }"
}

这样设置后,ClangFormat 将按照指定样式对 C++ 代码进行格式化,并确保大括号不会换到新行上。

修改示例:

Clang_format_style这里可以改为

{BasedOnStyle: LLVM, UseTab: Never, IndentWidth: 4, TabWidth: 4, BreakBeforeBraces: Attach}
相关文章
|
C++
【C++数据结构——栈和队列】括号配对(头歌实践教学平台习题)【合集】
【数据结构——栈和队列】括号配对(头歌实践教学平台习题)【合集】(1)遇到左括号:进栈Push()(2)遇到右括号:若栈顶元素为左括号,则出栈Pop();否则返回false。(3)当遍历表达式结束,且栈为空时,则返回true,否则返回false。本关任务:编写一个程序利用栈判断左、右圆括号是否配对。为了完成本关任务,你需要掌握:栈对括号的处理。(1)遇到左括号:进栈Push()开始你的任务吧,祝你成功!测试输入:(()))
675 7
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
3413 3
|
Linux C语言 C++
vsCode远程执行c和c++代码并操控linux服务器完整教程
这篇文章提供了一个完整的教程,介绍如何在Visual Studio Code中配置和使用插件来远程执行C和C++代码,并操控Linux服务器,包括安装VSCode、安装插件、配置插件、配置编译工具、升级glibc和编写代码进行调试的步骤。
4606 0
vsCode远程执行c和c++代码并操控linux服务器完整教程
|
编解码 编译器 C++
VS Code C/C++ MSVC编译器
VS Code C/C++ MSVC编译器
494 2
|
NoSQL 编译器 C语言
VSCode配置配置C++环境
VSCode配置配置C++环境
795 1
|
C语言 C++
vscode——如何在vscode中运行C/C++
vscode——如何在vscode中运行C/C++
378 1
|
项目管理 C++
【VS Code】安装配置调试C/C++(二)
【VS Code】安装配置调试C/C++(二)
723 2
|
编译器 C++
VS Code设置C++编译器路径
VS Code设置C++编译器路径
1696 0
|
JavaScript
VScode格式化vue文件--避免html属性换行
VScode格式化vue文件--避免html属性换行
1735 0
|
自然语言处理 API C++
阿里通义推出SmartVscode插件,自然语言控制VS Code,轻松开发应用,核心技术开源!
SmartVscode插件深度解析:自然语言控制VS Code的革命性工具及其开源框架App-Controller
2847 1
阿里通义推出SmartVscode插件,自然语言控制VS Code,轻松开发应用,核心技术开源!