title: How can I use wstring(s) in Linux APIs?
body: <p>I want to develope an application in Linux. I want to use wstring beacuse my application should supports unicode and I don't want to use UTF-8 strings.</p>
  
  <p>In Windows OS, using wstring is easy. beacuse any ANSI API has a unicode form. for example there are two CreateProcess API, first API is CreateProcessA and second API is CreateProcessW.</p>
  
  <pre><code>wstring app = L"C:\\test.exe";
  CreateProcess
  (
    app.c_str(), // EASY!
    ....
  );
  </code></pre>
  
  <p>But it seems working with wstring in Linux is complicated! for example there is an API in Linux called <a href="http://www.gnugeneration.com/books/linux/2.6.20/kernel-api/re855.html" rel="noreferrer">parport_open</a> (It just an example).</p>
  
  <p>and I don't know how to send my wstring to this API (or APIs like parport_open that accept a string parameter).</p>
  
  <pre><code>wstring name = L"myname";
  parport_open
  (
    0, // or a valid number. It is not important in this question.
    name.c_str(), // Error: because type of this parameter is char* not wchat_t*
    ....
  );
  </code></pre>
  
  <p>My question is how can I use wstring(s) in Linux APIs?</p>
  
  <p><strong>Note</strong>: I don't want to use UTF-8 strings.</p>
  
  <p>Thanks</p>