我在文档中搜索了缩进,但最终我放弃了,我想这样缩进代码:
int main(int argc, char **argv){
some code;
}
我知道缩进 -kr 给你这样的大括号,但 -kr 样式还包括
int
main(int argc, char **argv){
some code;
}
在 main 之前的这个 int 让我毛骨悚然。
有人可以告诉我这个选项吗?
最佳答案
您感兴趣的特定选项是
-npsl
--dont-break-procedure-type
Put the type of a procedure on the same line as its name.
-brf
--braces-on-func-def-line
Put braces on function definition line.
按照建议,GNU indent manual描述了各种选项。
这是一个快速脚本,用于说明这些选项对基本预定义样式的影响:
#!/bin/sh
for opt in gnu linux orig kr
do
echo "** $opt"
indent -st -$opt -npsl -brf hello.c
done
和输入文件:
#include <stdio.h>
int main(int argc, char **argv) { int n; for (n = 0; n < argc; ++n) printf("arg%d=%s\n", n, argv[n]); return 0; }
和相应的输出:
** gnu
#include <stdio.h>
int main(int argc, char **argv) {
int n;
for (n = 0; n < argc; ++n)
printf("arg%d=%s\n", n, argv[n]);
return 0;
}
** linux
#include <stdio.h>
int main(int argc, char **argv) {
int n;
for (n = 0; n < argc; ++n)
printf("arg%d=%s\n", n, argv[n]);
return 0;
}
** orig
#include <stdio.h>
int main(int argc, char **argv) {
int n;
for (n = 0; n < argc; ++n)
printf("arg%d=%s\n", n, argv[n]);
return 0;
}
** kr
#include <stdio.h>
int main(int argc, char **argv) {
int n;
for (n = 0; n < argc; ++n)
printf("arg%d=%s\n", n, argv[n]);
return 0;
}
我没有看到抑制 {
字符前空格的选项。
关于c - 缩进 C 代码,Unix,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34616114/