J'ai besoin d'aide pour comprendre ce que l'exercice 5-12 demande dans le C Programming Language

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

Question

  

K&R C Programming Language: pg. 105

     

Étendre entab et detab à accepter le raccourci

     

entab -m +n

     

à onglet moyen arrête toutes les colonnes de n, à partir de la colonne m.

entab remplace plusieurs espaces avec un caractère de tabulation et detab fait le contraire. La question concerne l'onglet arrêts et entab. figure I que pour detab il est assez facile de déterminer le nombre de places nécessaires pour atteindre l'onglet suivant arrêt, donc pas de soucis là-bas. Avec entab, en remplacement des espaces avec des onglets est un peu plus difficile, car je ne peux pas savoir à coup sûr la taille du caractère de tabulation va à son propre onglet arrêt (à moins d'un moyen de savoir à coup sûr).

Suis-je même de penser à cette chose correctement?

Était-ce utile?

La solution

onglet « arrête toutes les n colonnes, en commençant à la colonne m » vous indique la taille de chaque onglet arrêt est, au moins par ma lecture: il est juste n . Seul le premier onglet arrêt est différent; que l'on est m .

Autres conseils

besoins Entab de travailler quand pistes d'espaces atteignent un tabstop -. Puis cette course des espaces peut être remplacé par un caractère de tabulation

Par exemple, la ligne de texte suivant (le ruller est là pour référence):

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

devrait ressembler à ce qui suit après entab -8 +4:

\t  this \tis a line

(note qu'il pourrait être raisonnable pour qu'il y ait deux caractères de tabulation suivants « ceci » dans la ligne, depuis un espace ou un onglet atteindraient cet onglet arrêt).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top