Preciso de ajuda para entender o que o exercício 5-12 está pedindo no livro de linguagem de programação C

StackOverflow https://stackoverflow.com/questions/2649701

Pergunta

K&R C Programming Language: pg. 105

Ampliar entab e detab para aceitar a abreviação

entab -m +n

para significar a guia para todos n colunas, começando na coluna m.

entab substitui vários espaços por um caractere de guia e detab faz o oposto. A pergunta que tenho preocupações que a guia pare e entab. Eu acho isso para detab É muito fácil determinar o número de espaços necessários para alcançar a próxima parada da guia, para que não se preocupe. Com entab, Substituir espaços por guias é um pouco mais difícil, pois não posso com certeza saber o tamanho do caractere da guia para sua própria parada de guias (a menos que haja uma maneira de saber com certeza).

Estou pensando nessa coisa corretamente?

Foi útil?

Solução

"Tab para todas as colunas N, começando na coluna M" diz o tamanho de cada parada de guia, pelo menos pela minha leitura: é apenas n. Somente a primeira parada da guia é diferente; aquele é m.

Outras dicas

A ENTAB precisa se exercitar quando as execuções de espaços atingem um Tabstop - então essa execução de espaços pode ser substituída por um caractere de guia.

Por exemplo, a seguinte linha de texto (o Ruller está lá para referência):

           1   1   2   2   2
1      8   2   6   0   4   8
-------+---+---+---+---+---+
          this     is a line

deve parecer o seguinte depois entab -8 +4:

\t  this \tis a line

(Observe que pode ser razoável que haja dois caracteres de guia seguindo 'isto' na linha, pois um espaço ou uma guia atingiria essa parada de guia em particular).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top