[Tex/LaTex] Difference between control space and non-breaking space

line-breakingspacing

In my answer to Two-column layout with left column just as wide as its content I've used non-breaking spaces ~ (ties) to align monospaced text. Actually I rather meant control spaces \ , but they're less convenient to type (and read), and line breaks were not of interest anyway. Some experiments concerning line breaking are documented in the code below.

Question: Besides their line-breaking behaviour, is there any difference between \ and ~? In particular, do (or may) they by nature have a different width?

 

\documentclass{article}
\usepackage{lipsum}
\usepackage{parskip}

\begin{document}

\lipsum[75]

%non-breaking space
lorem lorem lorem lorem lorem lorem lorem lorem lorem 
lorem lorem lo~lo~lo~lo~lo~lo~lo~lo~ip~ip~ip~sum sum sum sum sum sum sum sum sum

lorem lorem lorem lorem lorem lorem lorem lorem lorem 
lorem lorem lo~lo~lo~lo~lo~ %input line break doesn't affect non-breaking space
lo~lo~lo~ip~ip~ip~sum sum sum sum sum sum sum sum sum

lorem lorem lorem lorem lorem lorem lorem lorem lorem 
lorem lorem lo~lo~lo~lo~lo  %breaks at input line break
lo~lo~lo~ip~ip~ip~sum sum sum sum sum sum sum sum sum

%breaks at protected space
lorem lorem lorem lorem lorem lorem lorem lorem lorem 
lorem lorem lo~lo~lo~lo~lo\ lo~lo~lo~ip~ip~ip~sum sum sum sum sum sum sum sum sum

\end{document}

enter image description here

Best Answer

Control space \ and a tie ~ have the same width and only differ in their line-breaking behaviour. The definition of the latter, taken from latex.ltx is:

\DeclareRobustCommand{\nobreakspace}{%
   \leavevmode\nobreak\ }
\catcode `\~=13
\def~{\nobreakspace{}}