title: C++ _byteswap_ulong was not declared in this scope
body: <p>when I try to compile my program I get this error:</p>
  
  <pre><code>error: ‘_byteswap_ushort’ was not declared in this scope
  long lNum = (long)_byteswap_ushort(iNum);
  </code></pre>
  
  <p>this is the program:</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;sstream&gt;
  #include &lt;stdlib.h&gt;
  
  using namespace std;
  
  int main()
  {
     long inputNum;
     cout &lt;&lt; "Input number:\n";
     cin &gt;&gt; inputNum;
  
     long Num = (long)_byteswap_ulong(iNum);
     stringstream oss;
     oss &lt;&lt; hex &lt;&lt; Num;
     string mystring = oss.str();
  
     return 0;
  }
  </code></pre>
  
  <p>I thought that including stdlib should solve the problem. Is there any other library I should include?</p>
  
  <p>The program is compiled with:</p>
  
  <pre><code>g++ -m32 -o output32 prog.cpp
  </code></pre>