TeX provides two primitive commands \uppercase and
\lowercase to change the case of text; they're not much used, but
are capable creating confusion.
The two commands do not expand the text that is their parameter -
the result of \uppercase{abc} is 'ABC', but
\uppercase{ is always '\abc}\abc', whatever the
meaning of \abc. The commands are simply interpreting a table of
equivalences between upper- and lowercase characters.
They have (for example) no mathematical sense, and
\uppercase{About $y=f(x)$}
will produce
which is probably not what is wanted.ABOUT $Y=F(X)$
In addition, \uppercase and \lowercase do not deal very well
with non-American characters, for example
\uppercase{ is the same as \ae}\ae.
LaTeX provides commands \MakeUppercase and \MakeLowercase
which fixes the latter problem. These commands are used in the
standard classes to produce upper case running heads for chapters
and sections.
Unfortunately \MakeUppercase and \MakeLowercase do not solve
the other problems with \uppercase, so for example a section
title containing \begin{tabular} ...
\end{tabular} will produce a running head containing
\begin{TABULAR}. The simplest solution to this problem is
using a user-defined command, for example:
\newcommand{\mytable}{\begin{tabular}...
\end{tabular}}
\section{A section title \protect\mytable{}
with a table}
Note that \mytable has to be protected, otherwise it will be
expanded and made upper case; you can achieve the same result by
declaring it with \DeclareRobustCommand, in which case the
\protect won't be necessary.
David Carlisle's textcase package
addresses many of these problems in a transparent way. It defines
commands \MakeTextUppercase and \MakeTextLowercase which do
upper- or lowercase, with the fancier features of the LaTeX
standard \Make*-commands but without the problems
mentioned above. Load the package with
\usepackage[overload]{textcase}, and it will redefine the LaTeX
commands (not the TeX primitive commands \uppercase and
\lowercase), so that section headings and the like don't produce
broken page headings.
This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=casechange