De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

diff para juntar, com cpp

Colaboração: Felipe Kellermann

Data de Publicação: 09 de Setembro de 2004

Eu estava olhando nas definições do `diff(1)' para ver se em alguma implementação as opções b' ew' apresentavam alguma diferença. Por acaso eu conheci uma outra opção, a `D'. Olhei no POSIX-2004 e não encontrei uma definição sobre essa opção, mas fiz alguns testes nos sistemas GNU e BSD e todos têm uma implementação dessa opção.

É uma opção bem simples. Tendo as duas entradas, por exemplo:

  $ head trecho[12].c
  ==> trecho1.c <==
          if (isatty(fileno(stdin))) {
                  printf("%s\n%s\n", rcsta, rcsid);
                  using_history();
          }
  
  ==> trecho2.c <==
          if (isatty(fileno(stdin))) {
                  printf("%s\n%s\n", rcsta, rcsid);
                  el = el_init(*argv, stdin, stdout);
          }
  $

Nós podemos, com essa opção, gerar uma versão comum desses dois trechos para ser usada com o cpp, como faríamos manualmente. Por exemplo:

  $ diff -D EDITLINE trecho[12].c
          if (isatty(fileno(stdin))) {
                  printf("%s\n%s\n", rcsta, rcsid);
  #ifndef EDITLINE
                  using_history();
  #else /* EDITLINE */
                  el = el_init(*argv, stdin, stdout);
  #endif /* EDITLINE */
          }
  $

Ou seja, em arquivos maiores (ou até em árvores completas), nós podemos dividir primeiramente as versões em módulos diferentes e depois podemos eventualmente juntar essas partes automaticamente, usando a `D'.


Semana de Estudos da Ciências da Computação UNESP Rio Claro

A SECCOMP é um evento científico, técnico e cultural, aberto ao público interessado, onde são apresentados palestras e seminários abrangendo diversos campos de aplicação e pesquisa em Computação. É promovido pela Universidade Estadual Paulista Júlio de Mesquita Filho (UNESP), realizado pelo Centro Acadêmico de Ciências da Computação (CACCO) e Empresa Júnior, Info Júnior, com a colaboração de alunos voluntários do curso de Bacharelado em Ciências da Computação do Departamento de Estatística, Matemática Aplicada e Computacional (DEMAC / UNESP Rio Claro). O evento ocorre durante uma semana e tem como objetivo promover o intercâmbio entre alunos, pesquisadores e profissionais atuantes no mercado, visando o incremento do conhecimento, do senso crítico e da cultura tecnológica dos participantes.

A SECCOMP ocorre há onze anos e a cada edição tem conquistado mais prestígio. Em 2004, será realizada de 13 a 17 de setembro.

O valor da inscrição é R$ 15,00 dando direito a:

  1. Kit do participante (bolsa e camiseta)
  2. Coquetel de encerramento (open bar)
  3. Concorrer a um monitor LCD com multimídia (regulamento no site)
  4. Participar de palestras e mini cursos
  5. Certificado (emitido no fim da semana)

Algumas novidades deste ano são:

  • Terça feira, dia exclusivamente dedicado ao Software Livre
  • I Linux Install Fest UNESP Rio Claro
  • Quinta feira, dia dedicado a mini cursos com algumas palestras, filmes sobre Computação e dinamica de grupo

Mais informações

Install Fest:

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Felipe Kellermann