How does C++ char* comparison work?
<pre><code>#include &lt;iostream&gt;

int main() {
    if ("zabc" &lt; "def") {
        std::cout &lt;&lt; "Less.\n";
    }
}
</code></pre>

<p>The code above prints <code>Less.</code>. I know this is not the right way to compare <code>char*</code>s in C++, but how does the above code print <code>Less.</code>?</p>
