如何在Visual Studio中自动格式化代码?

1155

我知道Visual Studio可以自动格式化代码来使我的方法和循环正确缩进,但我找不到相应的设置。


47
从顶部菜单选择:编辑 --> 高级 --> 格式化文档 - zipzit
9
2019年怎么样? - Alex Gordon
3
在VS2019中仍然是一样的。 - Finn
1
对于 Visual Studio 2017,使用快捷键 Ctrl + Alt + Enter。 - Fairuz Sulaiman
1
此功能将在Visual Studio 2022 17.1中提供 - 请参见:https://dev59.com/WW025IYBdhLWcg3w3J1H#70740018 - Kraego
显示剩余3条评论
38个回答

0
在Windows中,可以使用以下方法:
键盘快捷键Ctrl + ED 或者
菜单EditAdvancedFormat Document

0

使用 VS 2017,我想对网页 HTML 进行格式化,但它不知何故完全左对齐。即使安装了 Productivity Power Tools 也无法解决问题。

为了修复这个问题,我必须前往:工具 --> 选项 --> 文本编辑器 --> HTML(Web 表单)并更改以下参数:制表符缩进 = 智能和制表符 = 保留制表符。


0
如果您正在使用JetBrains ReSharper,格式化代码的最简单方法是使用CTRL + ALT + ENTER快捷键(重新格式化代码)。

0
您还可以尝试使用右键菜单(上下文菜单)选项来格式化代码文档的选择。请查看下面的截图:

Enter image description here


-1

复制/粘贴一个部分是另一种快速的方式(而且容易记住)。


3
“...对我没有进行任何格式化。事实上,我查找这个的原因是想在剪切和粘贴之后进行格式化。” - tenwest
1
这不是使用默认设置格式化您的代码。也许您有一些在粘贴后执行此操作的设置/插件。截至2018年11月(v1.30.2),方法是SHIFT + ALT + F。 - Pablo

-1

只需按下 Ctrl+Shift+I 即可完成任务。


-2
#include "stdafx.h"
#include <stdio.h>


int main(){
    char filename[15];

    printf("Enter file name:");
    scanf("%s", filename);
    Automat(filename);
    freq(filename);
}

int Automat(char filename[]){

    FILE*fp;
    char c;
    int state = 1;
    int duma = 0;
    fp = fopen(filename, "r");
    if (fp == NULL){
        printf("Error");
        system("pause");
    }
    while (!feof(fp)){
        c = fgetc(fp);

        switch (state){
        case 1:
            if (c == '\t' || c == '\n' || c == ' '){
                state = 3;
                break;
            }
        case 2:
            if (c >='A'|| c<='Z'){
                break;
            }

        case 3: duma++;
            state = 1;
            break;
        }
    }
    printf("Broq e : %d\n", duma);
    return 1;
}
int freq(char filename[]){

    FILE*fp;
    char c;
    int state = 1, sequence = 0;
    fp = fopen(filename, "r");
    if (fp == NULL){
        printf("Error");
        system("pause");
    }



    while (!feof(fp)){
        c = fgetc(fp);
        switch (state){
        case 1:
            if (c >= 'A' && c <= 'Z'){
                state = 2;
                break;
            }

        case 2:
            if (c == '\t' || c == '\n'||c == ' '){
                sequence++;
                state = 1;
                break;

            }
        }

    }
    printf("Sequence is : %d\n", sequence);
}

1
问题是“如何在Visual Studio中自动格式化代码?”。这个答案如何回答这个问题? - Peter Mortensen

-4
您可以按下 shift + alt + F。

6
这是针对VSCode的。 - UnAlpha

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接