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


当前回答

Visual Studio 2010/2013/2015/2017/2019

格式文档(Ctrl+K,Ctrl+D),即按住Ctrl,按下释放K,然后按下D,因为它是一个序列 格式选择(Ctrl+K,Ctrl+F)

工具栏编辑->高级(如果看不到高级,请在解决方案资源管理器中选择一个代码文件,然后重试)

你的快捷方式可能显示不同于我的,因为我设置了c#编码,但通过工具栏导航会让你到你的。

如果它不起作用,在你的代码中寻找错误,比如缺少括号使自动格式无法工作

其他回答

你可以通过工具→选项→环境→键盘来定义新的键绑定:

格式化选区:Ctrl+K, Ctrl+F

格式化文档:Ctrl+K, Ctrl+D

查看预定义的键盘快捷键。(这两个是编辑。FormatSelection和Edit.FormatDocument。)

macOS的注意事项

在macOS上,使用CMD⌘键而不是Ctrl键:

格式化选定内容:CMD⌘+K, CMD⌘+F 格式化文档: CMD⌘+ k, CMD⌘+ d

简单地按Ctrl+Shift+我将做的工作。

在Visual Studio 2015年和2017年的c#代码。

滚动到文件的末尾 删除最后一个“大括号”,} 等待,直到它上面的行显示一个错误 替换“大括号”,} 菲尼。:)

#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);
}