ArtisticStyle是一个开源的源代码格式化工具。主页地址为:http://astyle.sourceforge.net/,它可以应用在C、C++、Objective-C、C#、Java等程序语言中。http://astyle.sourceforge.net/astyle.html中为对使用它的详细介绍。
从http://sourceforge.net/projects/astyle/files/下载windows下文件AStyle_2.05.1_windows.zip,解压缩后,将AStyle/bin/下的AStyle.exe拷贝到C:\WINDOWS目录下,这样可以不用指定路径。
打开cmd命令提示符,将其定位到存放.c、.cpp、.h、.hpp目录下,执行:AStyle.exe1.cpp即可。
常用选项参数说明:
1. -s4 : 表示缩进4个空格,默认配置;
2. -S: 表示switch中case语句的缩进;
3. -N: 表示命名空间namespace内的缩进;
4. -U: 表示括号内的两头的参数和括号之间不留空格;
5. -H: 表示”if”、”for”、”while”等关键字右边增加一个空格;
6. -k1: *和&在表示指针和引用类型时,和类型名称并紧,和变量名之间留空格;
7. -p: 在运算符号(操作符)左右加上空格;
8. -P: 在括号两边插入空格;-d只在括号外面插入空格,-D只在里面插入;
9. -j: 给每个”if”、”for”、“while”增加大括号;
10. -D: 在小括号边上增加一个空格;
11. -c: 将TAB替换成空格;
12. -M: 对定义的参数和变量进行对齐;
13. -w: 对宏进行对齐处理;
14. --style=ansi: ANSI标准的文件格式,对”{”、”}”另启一行;
15. --indent=spaces=4: 缩进采用4个空格;
16. --add-brackets: 对”if”、”for”、“while”单行的语句增加括号;
17. --convert-tabs: 强制转换TAB为空格;
18. --indent-preprocessor: 将preprocessor(#define)等这类预定义的语句,如果有多行时前面填充对齐(是对单语句多行进行填充);
19. --align-pointer=type: *、&这类字符靠近类型;
20. --align-pointer=name: *、&这类字符靠近变量名字;
21. --pad-oper: 在操作符号两边增加空格字符;
22. --pad--header: 在关键字”if”、”for”、”while”等后面增加空格;
23. --indent-switches: switch case的代码也按照标准缩进方式缩进;
24. --indent-col1-comments: 如果函数开始后面(“{”后面)第一行是注释,也进行缩进;
25. --indent=tab: 显示说明使用Tab;
参考文献:http://www.cnblogs.com/goed/archive/2013/12/17/3478972.html