3 pontos por GN⁺ 2024-07-01 | Ainda não há comentários. | Compartilhar no WhatsApp

Projeto de fim de semana: brincando com C de forma divertida

  • A linguagem C é simples e poderosa, permitindo escrever até um sistema operacional inteiro com relativa facilidade
  • A sintaxe concisa de C influenciou muitas linguagens posteriores, como Java e Go
  • Também contribuiu para o surgimento da arte da ofuscação de código

Concurso IOCCC

  • O concurso IOCCC é um exemplo clássico de ofuscação de código
  • As inscrições do concurso frequentemente usam macros de pré-processador confusas, formatação ilógica e nomes de variáveis nada úteis
  • Esse tipo de código é difícil de ler, mas C consegue ser ao mesmo tempo legível e confuso

Instrução switch

  • A instrução switch, assim como if e for, não exige chaves
  • Quando usada sem chaves, só pode conter uma única instrução
  • A instrução switch é basicamente um goto com grife
  • Inicializar variáveis dentro de um switch pode causar comportamentos inesperados

Rótulos case

  • Os rótulos case não precisam ficar no nível mais alto do bloco de um switch
  • Podem ser usados junto com a condição if (0)
  • Também podem funcionar sem a instrução break

Combinação de else e if

  • É possível usar else e if para substituir a instrução switch
  • Dá para lidar com várias condições mesmo sem usar chaves

Extensões GNU

  • É possível usar o operador && para obter o endereço de um rótulo e saltar até ele com goto
  • Isso permite substituir a instrução switch

Substituindo for

  • É possível implementar laços usando rótulos dentro da declaração de variáveis
  • Embora seja algo específico do GCC, ainda assim dá para escrever código muito criativo e confuso em C

Conclusão

  • C oferece a possibilidade de escrever código extremamente criativo e confuso
  • Embora esse código seja difícil de ler, ele demonstra o poder da linguagem C

Opinião do GN⁺

  • Este artigo mostra muito bem a originalidade e a complexidade da linguagem C
  • É útil para explorar as várias possibilidades de uso da linguagem C
  • O lado artístico da ofuscação de código também é interessante
  • Os exemplos com extensões GNU são muito peculiares e criativos
  • Para desenvolvedores iniciantes aprendendo C, pode ser um pouco difícil

Ainda não há comentários.

Ainda não há comentários.