vscode 自动保存格式化 c++ 的时候总是不正确换行
问题背景
之前设置了代码自动格式化嘛不是 vscode设置保存时自动格式化代码,让代码自动缩进对齐,让代码更简洁 然后今天发现他突然抽风一样的乱换行,如下所示
原因分析
我一看这玩意,其实大概有一定的猜想,其他都没有问题,就这一行有,要么是注释导致的格式问题,要么就是字符数量的限制问题,通过排查,发现是单行字符数量限制 ,测试方法也简单,注释里面只写一个字,哈哈哈哈哈
原因找到了——单行字符数量出了问题,那就简单了
解决办法
那修改字符限制数量呗,方法二更方便些(maybe)
方法1
-
文件–首选项–设置,或者左下角齿轮–设置
-
搜索框搜索
emmet.include
,点击在settings.json
中编辑
-
在打开的
settings.json
中添加这行代码"C_Cpp.clang_format_style": "{ BasedOnStyle: Chromium, IndentWidth: 4,ColumnLimit: 0}",
前面的IndentWidth: 4
是设置函数的左大括号不换行的,设置vscode代码格式化c++时大括号不换行 ,ColumnLimit: 0
是设置行字符限制没有限制
方法2
- 文件–首选项–设置,或者左下角齿轮–设置
- 搜索框搜索
format
,点击在扩展c/c++
- 点击后,往下拉一点点,找到
C_Cpp: Clang_format_style
加入ColumnLimit: 0
,注意英文冒号,而且冒号后面跟一个英文空格。