Jump to content
Pequenu Gafanhoto

Ajuda com indentação

Recommended Posts

Oi glr,esse meu primeiro tópico,sejam gentis!

No meu ultimo trabalho da faculdade,que foi um programa em C,eu tomei bomba na nota pq eu vacilei na indentação. A lógica estava certa e o programa rodando 100%,mas a legibilidade do programa tinha um grande peso na nota. Agr eu estou fazendo o segundo trabalho do semestre e não quero vacilar na indentação de novo,vcs poderiam me dar umas dicas de como posso fazer isso?

Aliás na correção do meu trabalho ele arrumou todas as chaves({}) e eu até tentei fazer igual a ele,mas quando o programa vai ficando mt longo eu me confundo todo,minha bagunça é minha organização.Será que alguem poderia me dar dicas de como eu faço a indentação de uma forma que o programa fique legível pra mim e para o chato dql professor?

Obs.Qlqr coisa eu posto o código pra vcs darem uma olhada na indentação,é um código em C!

Share this post


Link to post
Share on other sites

Oi tudo bem, posta ai o código fazendo o favor,  obrigado. 

Se calhar era interessante ver o antes e o depois de o teu professor arrumar o código não sei se é possível. 

Edited by gnoo

Share this post


Link to post
Share on other sites

Seu professor não é chato, fazer um código bem organizado é tão importante quanto fazer um código que funcione.
Se for só uma coisa ou outra, não adianta de nada. Tem que ser os dois.

Aqui tem umas dicas interessantes. É para C++ porém boa parte é aproveitável para qualquer linguagem.
> https://github.com/kelvins/Boas-Praticas-Cplusplus

Vale lembrar que nenhuma dica que você achar por ai é uma "verdade absoluta". Cada um tem sua opinião e ponto de vista.

Uma dica que eu dou é você sempre seguir o estilo de código recomendado da linguagem de programação.
No caso da linguagem C tem o GNU Coding Standards que eu recomendo que você siga. (mas eu mesmo não sigo tudo, só para constar)

Outra dica é que você use espaços para indentar o código ao invés de TAB. Eu uso quatro espaços.
A maioria, senão todos os editores de código tem opção para converter o TAB em N espaços. Assim você continua com a praticidade de pressionar a tecla TAB porém usando espaços para indentar.

O motivo disso é por causa de alinhamento. O tamanho de um TAB pode variar de acordo com editor e fonte utilizados.
Um código que parece bem alinhado para você pode estar uma bagunça para outra pessoa.
Já com espaços isso não é um problema.

  • Curtir 1

Share this post


Link to post
Share on other sites

Tem uma coisa que me ajudou bastante, talvez pareça besta, mas me ajudou '---

Todo elemento PAI tem um FILHO.

Todo filho recebe um TAB.

Se o elemento PAI possuir netos, acrescente 2 TABS e assim por diante...

 

Ex. Programa que soma 2 valores:

#include <stdio.h>

ELEMENTO PAI (função main )

int main ()

{

ELEMENTOS FILHOS(tudo que ficar dentro da função main)

        int a, b, resposta;

        a = 27;

        b = 20;

        //a variavel resposta recebe a soma entre a e b

        resposta = a + b;

         //Apresentação dos valores de a, b e resposta

        printf("Valor 1 eh: %d, valor 2 eh: %d e a soma entre eles eh: %d\n", a,b,c);

        for(i =  0; i<=3; i+=1) ELEMENTO FILHO COM ELEMENTOS NETOS

        {

                printf("Olá, estou dentro do looping for...\n"); NETO

        }

        return 0;

} FIM ELEMENTO PAI

 

 

Share this post


Link to post
Share on other sites

Tem ferramentas que ajudam nessas coisas, uma delas é o astyle. Se você estiver usando uma distribuição como Ubuntu basta digitar no terminal:

sudo apt -y install astyle

Aí é só você ter um arquivo de configuração pessoal, ex.:

> $ cat ~/.astylerc
--style=java
--indent=spaces=4
--indent-preprocessor
--pad-oper
--pad-header
--max-instatement-indent=40
--align-pointer=name
--align-reference=name
--keep-one-line-statements
--convert-tabs
--max-code-length=79
--pad-method-colon=none

Original:

// main.c
int teste(int a, int b) { return a+b; }
int main(void) { int a=1; char b = 'a'; }

Modificado:

astyle main.c
// main.c
int teste(int a, int b) {
    return a + b;
}
int main(void) {
    int a = 1;
    char b = 'a';
}

O arquivo original por padrão é renomeado para main.c.orig.

Eu particularmente gosto do estilo Java porque foi a primeira linguagem de programação que realmente aprendi  (e estou aprendendo!) a programar. Acostumei muito a colocar as chaves desse jeito aí acima como ficou formatado e outras coisas. Se você quiser mudar é só alterar o parâmetro --style ou usar as opções disponíveis e personalizar seu estilo particular.

Edited by gzn
  • Agradecer 1
  • Curtir 1

Share this post


Link to post
Share on other sites
Em 07/06/2018 em 11:09, gzn disse:

Tem ferramentas que ajudam nessas coisas, uma delas é o astyle. Se você estiver usando uma distribuição como Ubuntu basta digitar no terminal:


sudo apt -y install astyle

 

Também gosto do astyle. Uso-o no VIM com essa config no ~/.vimrc:

" C style formater
map <F2> :%!astyle -A1 -s2 -xc -xj -f -p -D -k3 -xd -xW -w -c -U -S <CR>

No modo "normal" basta digitar F2 para formatar...

  • Agradecer 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...