VSCode一步更改C/C++格式化方式
VSCode默认的格式化方式是下面这样:
#include <cstdio>
using namespace std;
const int maxn = 1005;
int a[maxn];
char s[maxn];
bool read(int *a, int &n)
{
int cnt = 0;
if (!gets(s))
return false;
for (int i = 0; *(s + i); i++)
{
while (*(s + i) == ' ')
i++;
a[cnt] = 0;
while (*(s + i) != ' ' && *(s + i))
{
a[cnt] = a[cnt] * 10 + *(s + i) - '0';
i++;
}
cnt++;
if (!*(s + i))
break;
}
n = cnt;
return true;
}
int main()
{
int n;
read(a, n);
int cnt = 0;
for (int i = 0; i < n; i++)
{
if (cnt++)
printf(" ");
printf("%d", a[i]);
}
putchar('\n');
}
而现在一种更紧凑的格式化方式则是:
#include <cstdio>
using namespace std;
const int maxn = 1005;
int a[maxn];
char s[maxn];
bool read(int *a, int &n) {
int cnt = 0;
if (!gets(s))
return false;
for (int i = 0; *(s + i); i++) {
while (*(s + i) == ' ')
i++;
a[cnt] = 0;
while (*(s + i) != ' ' && *(s + i)) {
a[cnt] = a[cnt] * 10 + *(s + i) - '0';
i++;
}
cnt++;
if (!*(s + i))
break;
}
n = cnt;
return true;
}
int main() {
int n;
read(a, n);
int cnt = 0;
for (int i = 0; i < n; i++) {
if (cnt++)
printf(" ");
printf("%d", a[i]);
}
putchar('\n');
}
要切换其实很简单,打开设置,搜索
C_Cpp: Clang_format_style
把下面的框里内容改为
{ BasedOnStyle: LLVM, IndentWidth: 4 }
//IndentWidth是缩进值,可自定义,默认为2
即可改用LLVM的格式化风格