title: Why is strcmp unknown to clang?
body: <p>I have a basic program that compares two strings : </p>
  
  <pre><code>#include &lt;string&gt;
  #include &lt;iostream&gt;
  
  using namespace std;
  
  int main (int argc, char *argv[]) {
    if(strcmp (argv[0],"./test") != 0) {
      cout &lt;&lt; "not equal" &lt;&lt; endl;
    } else {
      cout &lt;&lt; "equal" &lt;&lt; endl;
    }
    return 0;
  }
  </code></pre>
  
  <p>it compiles with gcc but not with clang : </p>
  
  <pre><code> &gt; clang -o test test_clang.cpp 
  test_clang.cpp:7:6: error: use of undeclared identifier 'strcmp'
    if(strcmp (argv[0],"./test") != 0) {
       ^
  1 error generated.
  </code></pre>
  
  <p>Why doesn't it compile with clang ? </p>
  
  <p>EDIT: People are getting harsh on stack overflow, up to the point that I am hesitating to post a question. The question above has a simple answer, fine, but is it normal to down-vote questions (twice in the first minute!) because they have a simple, yet non obvious, answer ? </p>