<?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[Pfeitasten]]></title><description><![CDATA[<p>Diesen Beitrag gab es sicherlich schon 100mal. Ich habe schon gesucht habe auch etwas gefunden der Link hier: <a href="http://www.c-plusplus.net/forum/292781-full" rel="nofollow">http://www.c-plusplus.net/forum/292781-full</a>. Dort der 20te Beitrag von Incocnito, den habe ich mir genommen und getestet klappt. Aber ich möchte das nicht kopieren sondern selber schreiben, also habe ich das versucht genau wie er, aber es klappt nicht.</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;conio.h&gt;
using namespace std;

int main(){
    int oben=72;
    char eingabe;

    eingabe = getch();
    static_cast &lt;int&gt;(eingabe);
    //Wenn ich hier cout &gt;&gt; eingabe; schreibe kommt also ausgabe : das Zeichen &quot;alpha&quot;
    if(eingabe==oben){
        cout &lt;&lt; &quot;erkannt&quot;;
    }
    else{
        cout &lt;&lt; &quot;...&quot;;
    }
    return 0;
}
</code></pre>
<p>Aber dieser Code klappt nicht (meiner) und ich finde den Fehler nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/325335/pfeitasten</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Jul 2026 15:19:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/325335.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 26 Apr 2014 10:22:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pfeitasten on Sat, 26 Apr 2014 10:23:50 GMT]]></title><description><![CDATA[<p>Diesen Beitrag gab es sicherlich schon 100mal. Ich habe schon gesucht habe auch etwas gefunden der Link hier: <a href="http://www.c-plusplus.net/forum/292781-full" rel="nofollow">http://www.c-plusplus.net/forum/292781-full</a>. Dort der 20te Beitrag von Incocnito, den habe ich mir genommen und getestet klappt. Aber ich möchte das nicht kopieren sondern selber schreiben, also habe ich das versucht genau wie er, aber es klappt nicht.</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;conio.h&gt;
using namespace std;

int main(){
    int oben=72;
    char eingabe;

    eingabe = getch();
    static_cast &lt;int&gt;(eingabe);
    //Wenn ich hier cout &gt;&gt; eingabe; schreibe kommt also ausgabe : das Zeichen &quot;alpha&quot;
    if(eingabe==oben){
        cout &lt;&lt; &quot;erkannt&quot;;
    }
    else{
        cout &lt;&lt; &quot;...&quot;;
    }
    return 0;
}
</code></pre>
<p>Aber dieser Code klappt nicht (meiner) und ich finde den Fehler nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2396395</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2396395</guid><dc:creator><![CDATA[Skeptar]]></dc:creator><pubDate>Sat, 26 Apr 2014 10:23:50 GMT</pubDate></item><item><title><![CDATA[Reply to Pfeitasten on Sat, 26 Apr 2014 11:20:44 GMT]]></title><description><![CDATA[<p>Die Pfeiltasten erzeugen zwei Eingabezeichen für Deinen Eingabestream. Erst das zweite ist 72 (bei Pfeil nach oben).<br />
Bei Incocnito wird getch() in der Schleife ein zweites Mal aufgerufen, bevor 72 erkannt wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2396407</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2396407</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Sat, 26 Apr 2014 11:20:44 GMT</pubDate></item><item><title><![CDATA[Reply to Pfeitasten on Sat, 26 Apr 2014 12:20:23 GMT]]></title><description><![CDATA[<p>Okay habe eine schleife gemacht. Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2396417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2396417</guid><dc:creator><![CDATA[Skeptar]]></dc:creator><pubDate>Sat, 26 Apr 2014 12:20:23 GMT</pubDate></item><item><title><![CDATA[Reply to Pfeitasten on Sun, 27 Apr 2014 12:47:47 GMT]]></title><description><![CDATA[<p>So ich habe nun ein kleines Programm geschrieben.<br />
Allerdings bin ich damit noch nicht ganz zufrieden.</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;conio.h&gt;
using namespace std;

namespace taste{
    const int p_oben = 72;
    const int p_unten = 80;
    const int p_rechts = 77;
    const int p_links = 75;
    const int esc = 27;
}

void pos_ausabe(char feld[], int bewegung, int &amp;position, char *&amp;zeiger_feld){
        if(bewegung==-1){
            position+=bewegung;

            if(position&lt;0){
                position=0;
            }
            else if(position&gt;9){
                position=9;
            }
            else{
            getch( );
                *zeiger_feld--='_';
            }
        }
        //Nach Rechts -&gt;
        else if(bewegung==1){
            position+=bewegung;

            if(position&lt;1){
                position=0;
            }
            else if(position&gt;9){
                position=9;
            }
            else{
                *zeiger_feld++='_';
            }

        }
        //--------------
        else if(bewegung==0){
            //Nichts
        }

        feld[position]='X';
        system(&quot;CLS&quot;);
        for(unsigned int i=0;i&lt;10;i++){ //Gibt das Spielfeld aus 0-9
            cout &lt;&lt; feld[i];
        }
}

int main(){
    int eingabe=0, position=0;
    int bewegung=0;
    char feld[]={'_','_','_','_','_','_','_','_','_','_'}; //von 0-9
    char *zeiger_feld=feld;

    pos_ausabe(feld, bewegung, position, zeiger_feld);

    do{
    eingabe=getch();
        switch(eingabe){
            case taste::p_oben: cout &lt;&lt; &quot;oben\n&quot;;
                                break;
            case taste::p_unten: cout &lt;&lt; &quot;unten\n&quot;;
                                break;
            case taste::p_rechts: bewegung=1;
                                pos_ausabe(feld, bewegung, position, zeiger_feld);
                                break;
            case taste::p_links: bewegung=-1;
                                pos_ausabe(feld, bewegung, position, zeiger_feld);
        }
    }while(eingabe!=taste::esc);
    return 0;
}
</code></pre>
<p>Ich habe den Array als Feld genommen und wenn ich die Pfeiltasten links oder rechts drücke &quot;läuft&quot; das X da auch hin.</p>
<p>1. Wenn ich z.B. 2x recht drücke und dann links muss ich 2x links drücken bevor das X eine Stelle nach links geht. (sollte mit nur 1x sein)<br />
2. Wenn ich z.B. 2x links drücke und dann rechts geht das X erste eine Stelle zurück dann vor und dann muss ich wieder 1x drücken damit sich das X eine Stelle nach rechts bewegt.</p>
<p>Ich weiß nicht wo das Problem liegt oder liegen könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2396537</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2396537</guid><dc:creator><![CDATA[Skeptar]]></dc:creator><pubDate>Sun, 27 Apr 2014 12:47:47 GMT</pubDate></item></channel></rss>