<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express)]]></title><description><![CDATA[<p>Ich lerne zurzeit den Umgang mit der Windows-API und verwende dafür den oben genannten Compiler. Dummerweise habe ich zwei Probleme: Erstes Problem: Der Compiler erkennt die Funktion WinMain() nicht als Prozedureinprungspunkt an:</p>
<pre><code>#include &lt;windows.h&gt;

int CALLBACK WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPTSTR    lpCmdLine,
                     int       nCmdShow)
{
    (...)//Restlicher Code.
}
</code></pre>
<p>Zweites Problem: Wenn ich in einem DOS-Programm (vortestweise) die MessageBox() aufrufe (beispielsweise, um eine selbstdefinierte Exception auszulösen) und ich die Funktion so aufrufe:</p>
<pre><code>#include &lt;windows.h&gt;

int main()//Argumente spare ich mir...
{
    MessageBoxA(NULL,(LPCSTR)&quot;Beispiel&quot;,(LPCSTR)&quot;Beispiel&quot;,MB_OK|MB_ICONINFO);	//Dies funktioniert.
    MessageBox(NULL,(LPCWSTR)&quot;Beispiel&quot;,(LPCWSTR)&quot;Beispiel&quot;,MB_OK|MB_ICONINFO);	//Hier entstehen Kästchen.
}
</code></pre>
<p>dann erhalte ich beim Aufruf von MessageBoxA eine völlig normale MessageBox, beim Aufrufen von MessageBox (oder MessageBoxW) eine MessageBox mit undefinierbaren Zeichen (hauptsächlich Kästchen, aber der eine oder andere arabische Buchstabe ist auch dabei. Zumindest vermute ich, dass es arabisch ist.). Vielleicht liegt es an der Umwandlung vom char*- in einen LPCWSTR-String, aber ich habe keine Ahnung, was ich tun könnte. Wenn jemand Lösungsvorschläge hat, wäre ich demjenigen sehr verbindlich, der sie hier aufschreibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/236298/schwierigkeiten-mit-dem-microsoft-visual-c-2008-compiler-express</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 21:33:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/236298.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 13 Mar 2009 08:38:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 08:38:40 GMT]]></title><description><![CDATA[<p>Ich lerne zurzeit den Umgang mit der Windows-API und verwende dafür den oben genannten Compiler. Dummerweise habe ich zwei Probleme: Erstes Problem: Der Compiler erkennt die Funktion WinMain() nicht als Prozedureinprungspunkt an:</p>
<pre><code>#include &lt;windows.h&gt;

int CALLBACK WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPTSTR    lpCmdLine,
                     int       nCmdShow)
{
    (...)//Restlicher Code.
}
</code></pre>
<p>Zweites Problem: Wenn ich in einem DOS-Programm (vortestweise) die MessageBox() aufrufe (beispielsweise, um eine selbstdefinierte Exception auszulösen) und ich die Funktion so aufrufe:</p>
<pre><code>#include &lt;windows.h&gt;

int main()//Argumente spare ich mir...
{
    MessageBoxA(NULL,(LPCSTR)&quot;Beispiel&quot;,(LPCSTR)&quot;Beispiel&quot;,MB_OK|MB_ICONINFO);	//Dies funktioniert.
    MessageBox(NULL,(LPCWSTR)&quot;Beispiel&quot;,(LPCWSTR)&quot;Beispiel&quot;,MB_OK|MB_ICONINFO);	//Hier entstehen Kästchen.
}
</code></pre>
<p>dann erhalte ich beim Aufruf von MessageBoxA eine völlig normale MessageBox, beim Aufrufen von MessageBox (oder MessageBoxW) eine MessageBox mit undefinierbaren Zeichen (hauptsächlich Kästchen, aber der eine oder andere arabische Buchstabe ist auch dabei. Zumindest vermute ich, dass es arabisch ist.). Vielleicht liegt es an der Umwandlung vom char*- in einen LPCWSTR-String, aber ich habe keine Ahnung, was ich tun könnte. Wenn jemand Lösungsvorschläge hat, wäre ich demjenigen sehr verbindlich, der sie hier aufschreibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679132</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679132</guid><dc:creator><![CDATA[..........]]></dc:creator><pubDate>Fri, 13 Mar 2009 08:38:40 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 08:47:09 GMT]]></title><description><![CDATA[<p>Pack ein &quot;L&quot; vor deine Strings, dann sollte es klappen.</p>
<pre><code class="language-cpp">L&quot;meinString&quot;
</code></pre>
<p>Du kannst dir auch die Casts (LPCSTR bzw. LPCWSTR) sparen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679136</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679136</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 13 Mar 2009 08:47:09 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 08:53:22 GMT]]></title><description><![CDATA[<p>_matze schrieb:</p>
<blockquote>
<p>Pack ein &quot;L&quot; vor deine Strings, dann sollte es klappen.</p>
<pre><code class="language-cpp">L&quot;meinString&quot;
</code></pre>
<p>.</p>
</blockquote>
<p>Ahh, danke. Werde ich versuchen!</p>
<blockquote>
<p>Du kannst dir auch die Casts (LPCSTR bzw. LPCWSTR) sparen.</p>
</blockquote>
<p>Leider nein. Wenn ich das mache, dann haut mir die Maschine den Fehler raus, dass &quot;char* nicht in LPCWSTR (oder) LPCSTR konvertiert werden kann.&quot; Meistens kommt dann noch der Vorschlag, eine Typumwandlung im C-Style zu machen oder einen reinterpret_cast&lt;&gt;() anzuwenden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679140</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679140</guid><dc:creator><![CDATA[..........]]></dc:creator><pubDate>Fri, 13 Mar 2009 08:53:22 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:04:45 GMT]]></title><description><![CDATA[<p>Doch, glaub mir. Ein Beispiel aus einem meiner Programme:</p>
<pre><code class="language-cpp">MessageBox(0,&quot;SetupDiGetClassDevs error.&quot;,&quot;Test&quot;,0);
</code></pre>
<p>Funktioniert einwandfrei. Ich glaube, bei dir ist das nur aufgetreten, wenn du z.B. in einem Unicode-Projekt an MessageBox (=MessageBoxW) einen char* und eben nicht einen wchar_t* übergeben hast. Dann kann vermutlich nicht implizit nach LPCWSTR gecastet werden (macht ja auch keinen Sinn) und du kannst halt nur C-Cast/reinterpret_cast anwenden. Und dann kriegst du auch so ein Kuddelmuddel (char* nach LPCWSTR casten).</p>
<p>EDIT: Einen konstanten wchar_t* kriegst du halt, wenn du dem String ein L voranstellst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679145</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679145</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:04:45 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:11:55 GMT]]></title><description><![CDATA[<p>.......... schrieb:</p>
<blockquote>
<p>Der Compiler erkennt die Funktion WinMain() nicht als Prozedureinprungspunkt an:</p>
</blockquote>
<p>Wie äußert sich das? Und wie hast du dein Projekt erzeugt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679150</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679150</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:11:55 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:24:39 GMT]]></title><description><![CDATA[<p>Nun, ich erstelle ein normales, leeres Projekt (Win32-Projekt,Leeres Projekt, keine vorkompilierten Header) und geben dann den Standartcode ein:</p>
<pre><code>#include &lt;windows.h&gt;

int CALLBACK WinMain()//Die vier Standartargumente spare ich mir...
{
    (...)//Der Rest...
}
</code></pre>
<p>Wenn ich das Zeug aber linken will, erscheint (in etwa) folgende Fehlermeldung:<br />
&quot;Nicht aufgelöstes Symbol WinMain@()&quot;.<br />
Bei einem älteren Compiler (MSVC++ 8.0) funktioniert das aber. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679158</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679158</guid><dc:creator><![CDATA[..........]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:24:39 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:30:52 GMT]]></title><description><![CDATA[<p>also bei mir sieht der Einstiegspunkt so aus (man beachte das <strong>WINAPI</strong>):</p>
<pre><code class="language-cpp">int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow){
:
:
:
	return 0;
}
</code></pre>
<p>Deine CALLBACK Funktion ist für den Messagehandler, kann man dann z.B. so schreiben:</p>
<pre><code class="language-cpp">LRESULT CALLBACK EventHandler_MainWnd(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
:
:
:

	return DefWindowProc(hWnd, message, wParam, lParam);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1679161</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679161</guid><dc:creator><![CDATA[*guggstdu*]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:30:52 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:35:31 GMT]]></title><description><![CDATA[<p>Eigentlich ist es egal, was ich nehme. WINAPI, CALLBACK oder einfach nur __stdcall, dass ist (zumindest in meinen API-Funktionen und MFC-Klassen) Jacke wie Hose. Ich habe mir mal die Header angesehen, und ich habe 4 Definitionen (#define) für __stdcall gefunden. Ich glaube nicht so recht daran, dass es deshalb nicht funktioniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679163</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679163</guid><dc:creator><![CDATA[..........]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:35:31 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:39:54 GMT]]></title><description><![CDATA[<p>.......... schrieb:</p>
<blockquote>
<p>dann erhalte ich beim Aufruf von MessageBoxA eine völlig normale MessageBox, beim Aufrufen von MessageBox (oder MessageBoxW) eine MessageBox mit undefinierbaren Zeichen (hauptsächlich Kästchen, aber der eine oder andere arabische Buchstabe ist auch dabei. Zumindest vermute ich, dass es arabisch ist.). Vielleicht liegt es an der Umwandlung vom char*- in einen LPCWSTR-String, aber ich habe keine Ahnung, was ich tun könnte. Wenn jemand Lösungsvorschläge hat, wäre ich demjenigen sehr verbindlich, der sie hier aufschreibt.</p>
</blockquote>
<p>Du definierst in deine Projekteigenschaften ob dein Projekt Unicode oder multibyte Zeichensatz verwenden soll. (Projekt-&gt; Eigenschaften-&gt; Konfigurationseigenschaften-&gt; Allgemein-&gt; Zeichensatz-&gt; &quot;Multi-Byte-Zeichensatz verwenden&quot; oder &quot;Unicode-Zeichensatz verwenden&quot; auswählen). Der Compiler entscheide dann je nach ausgewälten Zeichesatz ob er für MessageBox MessageBoxA oder MessageBoxW auswählt. Siehe hierzu &quot;<strong>winuser.h</strong>&quot;</p>
<pre><code class="language-cpp">#ifdef UNICODE
#define MessageBox  MessageBoxW
#else
#define MessageBox  MessageBoxA
#endif // !UNICODE
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1679166</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679166</guid><dc:creator><![CDATA[*guggstdu*]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:39:54 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:42:29 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p><em>guggstdu</em> schrieb:</p>
<blockquote>
<p>also bei mir sieht der Einstiegspunkt so aus (man beachte das <strong>WINAPI</strong>):</p>
<pre><code class="language-cpp">int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow){
:
:
:
	return 0;
}
</code></pre>
<p>Deine CALLBACK Funktion ist für den Messagehandler, kann man dann z.B. so schreiben:</p>
<pre><code class="language-cpp">LRESULT CALLBACK EventHandler_MainWnd(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
:
:
:

	return DefWindowProc(hWnd, message, wParam, lParam);
}
</code></pre>
</blockquote>
<p>Ich glaub dir ist nicht bewusst das sowohl &quot;WINAPI&quot; also auch &quot;CALLBACK&quot; nur eine #define ist wo &quot;__stdcall&quot; dahinter steckt ;).</p>
<p>Gruessli C0de4Fun</p>
<p>€ mist wohl zu spaet <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679167</guid><dc:creator><![CDATA[C0de4Fun]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:42:29 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:45:39 GMT]]></title><description><![CDATA[<p>Es liegt an dem Parameter</p>
<pre><code class="language-cpp">LPTSTR lpszCmdLine
</code></pre>
<p>Der sollte so aussehen:</p>
<pre><code class="language-cpp">LPSTR lpszCmdLine
</code></pre>
<p>EDIT: Der Compiler hat dir doch auch gesagt, dass du die WinMain nicht überladen kannst. Das ist ein Anzeichen dafür, dass deine Parameter-Liste nicht korrekt ist (oder die Rückgabe). Du versuchst, eine WinMain-Variante zu notieren, die es nicht gibt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679169</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679169</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:45:39 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:46:52 GMT]]></title><description><![CDATA[<p>Ok, eine dritte Frage: Was ist der Unterschied zwischen Multibyte und Unicode?<br />
Folgendes weiss ich bereits:<br />
1. Beide verbrauchen mehr als 1 Byte pro Buchstabe.<br />
2. Daher gibt es mindestens 65535 verschiedene Buchstaben.<br />
3. Beide unterstützen auch asiatische Buchstaben- oder Silbensätze.</p>
<p>WAS IST DER UNTERSCHIED? ICH WEISS ES NICHT MEHR.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679172</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679172</guid><dc:creator><![CDATA[..........]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:46:52 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:46:53 GMT]]></title><description><![CDATA[<p>C0de4Fun schrieb:</p>
<blockquote>
<p>Ich glaub dir ist nicht bewusst das sowohl &quot;WINAPI&quot; also auch &quot;CALLBACK&quot; nur eine #define ist wo &quot;__stdcall&quot; dahinter steckt ;).</p>
</blockquote>
<p>Ja, stimmt war mir nicht bewußt. Ich habe mir da auch nie einen Kopf gemacht, weil mein Code ja auch funktioniert.<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679173</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679173</guid><dc:creator><![CDATA[*guggstdu*]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:46:53 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 09:53:12 GMT]]></title><description><![CDATA[<p>Microsoft schrieb:</p>
<blockquote>
<p>A multibyte character set may consist of <strong>both one-byte and two-byte characters</strong>. Thus a multibyte-character string may contain a mixture of single-byte and double-byte characters. A two-byte multibyte character has a lead byte and a trail byte. In a particular multibyte-character set, the lead bytes fall within a certain range, as do the trail bytes. When these ranges overlap, it may be necessary to evaluate the particular context to determine whether a given byte is functioning as a lead byte or a trail byte.</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1679180</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679180</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 13 Mar 2009 09:53:12 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 10:01:30 GMT]]></title><description><![CDATA[<p>Ok, fassen wir einmal zusammen:<br />
1. Multibytes können auch 1 Byte betragen.<br />
2. Multibytestrings können daher eine Liste aus 1- und 2-Byteblöcken sein.<br />
3. Jedoch sind diese Fehleranfällig, wenn man den Wert eines 1-Byteblock über OxFF stellt (1 Byte). Dann wird das nächste Byte uberschrieben.</p>
<p>1. Unicode verwendet standartmässig 2 Byte.<br />
2. Alle Unicodestrings sind eine Liste aus 2-Byteblöcken.<br />
3. Unicode ist nicht so fehleranfällig, da nicht über den reservierten Speicher hinaus geschrieben werden muss.</p>
<p>Habe ich das jetzt richtig rekapituliert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679187</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679187</guid><dc:creator><![CDATA[..........]]></dc:creator><pubDate>Fri, 13 Mar 2009 10:01:30 GMT</pubDate></item><item><title><![CDATA[Reply to Schwierigkeiten mit dem Microsoft Visual C++ 2008-Compiler (Express) on Fri, 13 Mar 2009 10:20:47 GMT]]></title><description><![CDATA[<p>.......... schrieb:</p>
<blockquote>
<p>Ok, fassen wir einmal zusammen:<br />
1. Multibytes können auch 1 Byte betragen.</p>
</blockquote>
<p>Ja.</p>
<p>.......... schrieb:</p>
<blockquote>
<p>2. Multibytestrings können daher eine Liste aus 1- und 2-Byteblöcken sein.</p>
</blockquote>
<p>oder mehr... (deswegen ja *mulit*... sonst hiese es ja &quot;double&quot; (DBCS, was es auch gibt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> ))</p>
<p>.......... schrieb:</p>
<blockquote>
<p>3. Jedoch sind diese Fehleranfällig, wenn man den Wert eines 1-Byteblock über OxFF stellt (1 Byte). Dann wird das nächste Byte uberschrieben.</p>
</blockquote>
<p>Nö... wieso soll sowas Fehleranfällig sein... das Problem ist nur, dass man oft nicht weiss, welches *Encoding* verwendet wurde...</p>
<p>.......... schrieb:</p>
<blockquote>
<p>1. Unicode verwendet standartmässig 2 Byte.</p>
</blockquote>
<p>Nein. Unicode ist ein Zeichen-Standard und hat primär mit der Codierung in Dateien nichts zu tun. Zur Codierung wird aber UTF8 oder UTF16 empfohlen. Will man eine 1-zu-1 Kodierung des Standards in der Datei, so muss man UTF32 verwenden.</p>
<p>.......... schrieb:</p>
<blockquote>
<p>2. Alle Unicodestrings sind eine Liste aus 2-Byteblöcken.</p>
</blockquote>
<p>Dies trifft nur bei UTF16 zu (wchar_t)</p>
<p>.......... schrieb:</p>
<blockquote>
<p>3. Unicode ist nicht so fehleranfällig, da nicht über den reservierten Speicher hinaus geschrieben werden muss.</p>
</blockquote>
<p>Nein. Damit hat dies nichts zu tun.</p>
<p>Siehe auch meinen Artikel über Unicode im Artikel-Forum</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1679193</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1679193</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Fri, 13 Mar 2009 10:20:47 GMT</pubDate></item></channel></rss>