<?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[Probleme mit char]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>meine Anwendung soll die aktuelle Uhrzeit mit einem Wechsel von Buchstaben 'a''ab' in der Statusleiste ausgeben.</p>
<p>Das Resultat soll der Ausgabe in folgendem Format entsprechen:<br />
&quot;[ 09:52:31 ] [ a Working ]&quot; =&gt;Maske: &quot;[ status_X1 ] [ status_X2 Working ]&quot;</p>
<p>Mein Problem ist, dass der Compiler folgenden Fehler ausspuckt:</p>
<pre><code>error C2440: '=': 'const char [2]' kann nicht in 'char [2]' konvertiert werden
</code></pre>
<p>und ich nicht weiß, wie ich die Uhrzeit und die Buchstaben wie in der Maske formatiert ausgeben kann. <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>
<pre><code class="language-cpp">VOID CALLBACK Status_Message(HWND hWnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime)
{
	static char status_X1[9], status_X2[2];
	switch (idEvent)
	{
	case Timer_Time:
		GetTimeFormatA(LOCALE_USER_DEFAULT, 0, NULL, NULL, status_X1, _countof(status_X1));
	case Timer_Slash:
		if(status_X2 == &quot;a&quot;){
			status_X2 = &quot;ab&quot;;
		}
		else{
			//status_X2 = &quot;a&quot;;
		}
	}
	char status_text[] = &quot;[ 09:52:31 ] [ / Working ]&quot;;  :arrow_right: Muster
	SetDlgItemTextA(hWnd, IDC_STATUS, status_text);
}
</code></pre>
<p>Ich hoffe, ihr könnt mir helfen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Mfg, echo&lt;delta&gt;</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/218285/probleme-mit-char</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 04:39:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/218285.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 18 Jul 2008 14:14:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Probleme mit char on Fri, 18 Jul 2008 14:14:47 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>meine Anwendung soll die aktuelle Uhrzeit mit einem Wechsel von Buchstaben 'a''ab' in der Statusleiste ausgeben.</p>
<p>Das Resultat soll der Ausgabe in folgendem Format entsprechen:<br />
&quot;[ 09:52:31 ] [ a Working ]&quot; =&gt;Maske: &quot;[ status_X1 ] [ status_X2 Working ]&quot;</p>
<p>Mein Problem ist, dass der Compiler folgenden Fehler ausspuckt:</p>
<pre><code>error C2440: '=': 'const char [2]' kann nicht in 'char [2]' konvertiert werden
</code></pre>
<p>und ich nicht weiß, wie ich die Uhrzeit und die Buchstaben wie in der Maske formatiert ausgeben kann. <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>
<pre><code class="language-cpp">VOID CALLBACK Status_Message(HWND hWnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime)
{
	static char status_X1[9], status_X2[2];
	switch (idEvent)
	{
	case Timer_Time:
		GetTimeFormatA(LOCALE_USER_DEFAULT, 0, NULL, NULL, status_X1, _countof(status_X1));
	case Timer_Slash:
		if(status_X2 == &quot;a&quot;){
			status_X2 = &quot;ab&quot;;
		}
		else{
			//status_X2 = &quot;a&quot;;
		}
	}
	char status_text[] = &quot;[ 09:52:31 ] [ / Working ]&quot;;  :arrow_right: Muster
	SetDlgItemTextA(hWnd, IDC_STATUS, status_text);
}
</code></pre>
<p>Ich hoffe, ihr könnt mir helfen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Mfg, echo&lt;delta&gt;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549437</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549437</guid><dc:creator><![CDATA[echo*lt*delta*gt*]]></dc:creator><pubDate>Fri, 18 Jul 2008 14:14:47 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit char on Fri, 18 Jul 2008 14:50:57 GMT]]></title><description><![CDATA[<p>Du kannst nicht an Arrays (status_X2) zuweisen und auch nicht direkt vergleichen!</p>
<p>Du könntest:<br />
- einen std::string benutzen // Beste Wahl, IMHO<br />
- die einzelnen Elemente zuweisen (status_X2[0] = 'a'; status_X2[1] = 'b'; ) und auch vergleichen<br />
- strcpy() u. strcmp() benutzen, wenn du status_X2 groß genug machst (&quot;ab&quot; enthält 3 Zeichen!)</p>
<p>Den std::string könntest Du zuweisen und vergleichen:</p>
<pre><code class="language-cpp">std::string status_X2;
if(status_X2 == &quot;ab&quot;)
  status_X2 = &quot;a&quot;;
</code></pre>
<p>EDIT: Fehlen bei dir die 'break's nach dem 'case' ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549444</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549444</guid><dc:creator><![CDATA[bladerunner10]]></dc:creator><pubDate>Fri, 18 Jul 2008 14:50:57 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit char on Fri, 18 Jul 2008 14:50:15 GMT]]></title><description><![CDATA[<p>Danke für deine schnelle Antwort, nur leider kann ich damit nur die Hälfte anfangen :). =&gt; Schreibe erst seit kurzem in C++.</p>
<p>Am besten wäre ein Codebeispiel. So, wie ich das verstanden habe, kann dann</p>
<pre><code class="language-cpp">case Timer_Slash:
	if(status_X2 == &quot;a&quot;){
		status_X2 = &quot;ab&quot;;
	}
	else{
		status_X2 = &quot;a&quot;;
	}
</code></pre>
<p>so bleiben, wie es ist.</p>
<p>Folgende fragen sind noch offen:</p>
<p>1. Ich brauche eine static Variable, von welchem Typ? (String <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="😕"
    />)<br />
2. Was muss ich dann in GetTimeFormatA ändern?<br />
3. Und wie kann ich dann die Daten, wie in der Maske ausgeben?</p>
<p>Mfg, echo&lt;delta&gt;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549459</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549459</guid><dc:creator><![CDATA[echo*lt*delta*gt*]]></dc:creator><pubDate>Fri, 18 Jul 2008 14:50:15 GMT</pubDate></item><item><title><![CDATA[Reply to Probleme mit char on Sat, 19 Jul 2008 04:38:43 GMT]]></title><description><![CDATA[<p>Der case-Zweig kann nicht so bleiben. Du musst jeden case-Zweig mit einem &quot;break;&quot; abschließen, sonst wird der darauf folgende Zweig ebenfalls ausgeführt.</p>
<pre><code class="language-cpp">//wenn var==0 ist, werden die Zweige für 0 und 1 ausgeführt, da case 0 nicht mit einem break beendet wird.
switch(var) {
  case 0:
    //mache was
  case 1:
    //mache was anderes
    break;  //bei var==1 wird nur dieser Zweig ausgeführt und danach aus dem switch gesprungen
  case 2:
    //mache wieder was
    break;
}
</code></pre>
<p>std::string ist ein C++-Datentyp, der komfortabler ist als die alten char-Arrays. Damit kannst du, wie schon erwähnt wurde, Variablen einfach wie z.B. ints vergleichen (so, wie man es aus anderen Sprachen gewöhnt ist).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1549651</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1549651</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Sat, 19 Jul 2008 04:38:43 GMT</pubDate></item></channel></rss>