PermLUG
|
Пермская группа пользователей Linux |
|
ОблакоВход для пользователейНавигация |
Приведение кода к определённому стилю![]() Тяжело читаются листинги давно написанных программ, а тем более чужие. Занялся я как-то вопросом, как же привести исходный код к конкретному стилю, например, GNU, Кернигана и Ричи и т.п. нашёл маленькую утилитку под названием astyle. Собирается просто: cd astyle/buildgcc/ make && make install Сварганил маленький примерчик: grifon@ghost:~$ cat test.c
#include <math.h>
#include <stdio.h>
int main(int argc,char *argv[]){int a,b;printf("a=");scanf("%d",&a);
printf("b=");scanf("%d",&b);
if(a>b){printf("a greater than b!\n"); return 1;}
printf("sqrt(a^2+b^2)=%f\n", sqrt(a*a+b*b));return 0;}
grifon@ghost:~$ cat test.c | astyle
#include <math.h>
#include <stdio.h>
int main(int argc,char *argv[]) {
int a,b;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
if (a>b) {
printf("a greater than b!\n");
return 1;
}
printf("sqrt(a^2+b^2)=%f\n", sqrt(a*a+b*b));
return 0;
}
grifon@ghost:~$ cat test.c | astyle --style=gnu
#include <math.h>
#include <stdio.h>
int main(int argc,char *argv[])
{
int a,b;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
if (a>b)
{
printf("a greater than b!\n");
return 1;
}
printf("sqrt(a^2+b^2)=%f\n", sqrt(a*a+b*b));
return 0;
}
|
Новые записи в блогахАктивные обсуждения форума
|
| Пермская группа пользователей Linux, 2003—2008 |
Комментарии
не вдохновило.
Надо самому учиться оформлять.
А если ты криво оформляешь? неправильно!
Ты никогда не работал программистом в команде.
Нужен единый стандарт написания кода, а все пишут так как хотят!111
А еще заметка не совсем про "нужно самому", не все такие как ты ответственные! :)
Так что ты, "не туда" написал! :)
1. Пробелы вместо табов
2. Лишние пробелы перед скобками после if
3. Нет пробелов после запятых
А так ничо.
Я ещё ставлю пробел между именем функции и скобками при объявлении и перевод строки между возвращаемым значением и именем функции при реализации.
Я тоже много чего ставлю, однако цель не в педантичности, а в читаемости поставляемого кода