<?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[C&#x2F;C++ automatisch Großbuchstaben]]></title><description><![CDATA[<p>Tach zusammen bin neu hier und hab direkt mal ne frage, wie kann man bei c/c++ so einstellen bzw. programmieren, dass das programm automatisch großbuchstaben macht,<br />
da ich als hausaufgabe hab das ich einen Codirer schreiben soll und da hab ich keine lust klein buchstaben auch noch mal extra aufzuschreiben und so, kann mir jemand helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/158569/c-c-automatisch-großbuchstaben</link><generator>RSS for Node</generator><lastBuildDate>Thu, 10 Sep 2026 04:33:14 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/158569.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 06 Sep 2006 14:47:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 14:47:17 GMT]]></title><description><![CDATA[<p>Tach zusammen bin neu hier und hab direkt mal ne frage, wie kann man bei c/c++ so einstellen bzw. programmieren, dass das programm automatisch großbuchstaben macht,<br />
da ich als hausaufgabe hab das ich einen Codirer schreiben soll und da hab ich keine lust klein buchstaben auch noch mal extra aufzuschreiben und so, kann mir jemand helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132396</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132396</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Wed, 06 Sep 2006 14:47:17 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 14:51:24 GMT]]></title><description><![CDATA[<p>Vampir87 schrieb:</p>
<blockquote>
<p>kann mir jemand helfen?</p>
</blockquote>
<p>Wenn du uns sagst, was du damit eigentlich meinst, vielleicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132402</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132402</guid><dc:creator><![CDATA[DarthZiu]]></dc:creator><pubDate>Wed, 06 Sep 2006 14:51:24 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:01:58 GMT]]></title><description><![CDATA[<p>ich will genau zusagen ein pr. schreiben das texte verschlüsselt (ganz einfache form a=x, b=w, usw) und da ich keine lust hab mit switch() case: dauertn zu schreiben case 'A' || 'a'.... für das ganze abc. zu schreiben will ich nur großbuchstaben habe, und wenn der user einen klein buchstaben eingibt, das er direkt als großbuchstabe geändert wird</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132412</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132412</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:01:58 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:05:57 GMT]]></title><description><![CDATA[<p><a href="http://www.cppreference.com/stdstring/toupper.html" rel="nofollow">http://www.cppreference.com/stdstring/toupper.html</a></p>
<p>Ist aber aus der C-Library. Keine Ahnung, was man in C++ benutzt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132419</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132419</guid><dc:creator><![CDATA[DarthZiu]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:05:57 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:09:09 GMT]]></title><description><![CDATA[<p>Du kannst dir sogar den ganzen switch sparen und zum Beispiel sowas schreiben:</p>
<pre><code class="language-cpp">// dreht das Alphabet um
if(zeichen &gt;= 'A' &amp;&amp; zeichen &lt;= 'Z')
    zeichen = 'Z' - (zeichen - 'A');
if(zeichen &gt;= 'a' &amp;&amp; zeichen &lt;= 'z')
    zeichen = 'z' - (zeichen - 'a');
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1132422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132422</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:09:09 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:11:06 GMT]]></title><description><![CDATA[<p>das ist ja im entefeckt ja das gleiche ob ich if() nehme oder switch() oder?<br />
das programm soll ja verschlüsseln und entschlüssen können, und da meine ich das man das mit switch() machen muss oder geht das auch anders?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132426</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132426</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:11:06 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:17:18 GMT]]></title><description><![CDATA[<p>Könntest genauso gut ne Art LookUp-Table schreiben, die Buchstaben den Code zuordnet.</p>
<p>for example</p>
<pre><code class="language-cpp">map&lt;char, char&gt; Codes;

Codes.insert(make_pair('a','f'));   // wobei 'a' dein Buchstabe ist, den du zu 'f' ersetzen willst
</code></pre>
<p>Dann brauchst du nur noch über deine Eingabe zu laufen und für jeden Buchstaben<br />
den passenden Wert holen:</p>
<pre><code class="language-cpp">for(JEDER_BUCHSTABE_C)
{
    c = Codes[c];
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1132431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132431</guid><dc:creator><![CDATA[DarthZiu]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:17:18 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:19:07 GMT]]></title><description><![CDATA[<p>Der Unterschied liegt eher darin, dass du nur 2 if-Abfragen brauchst statt 26 switch-Fälle <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>MfG SideWinder</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132433</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132433</guid><dc:creator><![CDATA[SideWinder]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:19:07 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:19:29 GMT]]></title><description><![CDATA[<p>Einem if kannst du viel komplexere Ausdrücke zum Auswerten geben. Den von mir oben geschriebenen Code kannst du nicht in der Kürze mit einem switch nachbauen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132434</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132434</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:19:29 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:21:06 GMT]]></title><description><![CDATA[<p>DarthZiu: Eine map ist in diesem Fall ja mal eindeutig Overhead. Dann kannst du auch gleich ne Zeichenkette nehmen:</p>
<pre><code class="language-cpp">char ein[] = &quot;ABC&quot;;
char aus[] = &quot;DZX&quot;;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1132438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132438</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:21:06 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:26:13 GMT]]></title><description><![CDATA[<p>hmm... also muss ich doch beide arten eingeben und ich dachte man kann das so machen wie bei der tastatur, dass man nur großbuchstaben eingibt (mit der dauer umschalt taste)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132443</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:26:13 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:38:04 GMT]]></title><description><![CDATA[<p>gibs bei der einen variante nicht einige probleme später, wenn man so weit ist<br />
if(zeichen &gt;= 'a' &amp;&amp; zeichen &lt;= 'Z' ) zeichen = 'Z' - (zeichen -'a');<br />
if(zeichen)&gt;= 'z' &amp;&amp; zeichen &lt;= 'A' ) zeichen = 'A' - (zeichen -'z');</p>
<p>oder ???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132455</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:38:04 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 15:51:05 GMT]]></title><description><![CDATA[<p>Was heißt denn, wenn man so weit ist? Mein Code Snippet ist vollständig, da brauchst du keine weiteren ifs einzufügen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132467</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132467</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 06 Sep 2006 15:51:05 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 16:04:29 GMT]]></title><description><![CDATA[<p>ich meine ja nur das ich schon so weit bin das ich das ganze abc hab hier der code ich weis nur nicht ob das so geht.</p>
<pre><code class="language-cpp">#include &lt;conio.h&gt;
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;iostream.h&gt;

main
{
char zeichen, zeichen2, wort;
int i,x;
printf (&quot;Codierer\n&quot;);
//printf (&quot;wieviele Buchstaben möchten sie codieren:&quot;);
// scanf (&quot;%i&quot;, &amp;x);
printf (&quot;Geben sie einen buchstaben ein:&quot;);
 scanf (&quot;%c&quot;, &amp;zeichen);
if(zeichen &gt;= 'a' &amp;&amp; zeichen &lt;= 'Z');
if(zeichen &gt;= 'b' &amp;&amp; zeichen &lt;= 'x');
if(zeichen &gt;= 'c' &amp;&amp; zeichen &lt;= 'Y');
if(zeichen &gt;= 'd' &amp;&amp; zeichen &lt;= 'W');
if(zeichen &gt;= 'e' &amp;&amp; zeichen &lt;= 'V');
if(zeichen &gt;= 'f' &amp;&amp; zeichen &lt;= 'U');
if(zeichen &gt;= 'g' &amp;&amp; zeichen &lt;= 'T');
if(zeichen &gt;= 'h' &amp;&amp; zeichen &lt;= 'S');
if(zeichen &gt;= 'i' &amp;&amp; zeichen &lt;= 'R');
if(zeichen &gt;= 'j' &amp;&amp; zeichen &lt;= 'Q');
if(zeichen &gt;= 'k' &amp;&amp; zeichen &lt;= 'P');
if(zeichen &gt;= 'l' &amp;&amp; zeichen &lt;= 'O');
if(zeichen &gt;= 'm' &amp;&amp; zeichen &lt;= 'M');
if(zeichen &gt;= 'n' &amp;&amp; zeichen &lt;= 'N');
if(zeichen &gt;= 'o' &amp;&amp; zeichen &lt;= 'L');
if(zeichen &gt;= 'p' &amp;&amp; zeichen &lt;= 'K');
if(zeichen &gt;= 'q' &amp;&amp; zeichen &lt;= 'J');
if(zeichen &gt;= 'r' &amp;&amp; zeichen &lt;= 'I');
if(zeichen &gt;= 's' &amp;&amp; zeichen &lt;= 'H');
if(zeichen &gt;= 't' &amp;&amp; zeichen &lt;= 'G');
if(zeichen &gt;= 'u' &amp;&amp; zeichen &lt;= 'F');
if(zeichen &gt;= 'v' &amp;&amp; zeichen &lt;= 'E');
if(zeichen &gt;= 'w' &amp;&amp; zeichen &lt;= 'D');
if(zeichen &gt;= 'x' &amp;&amp; zeichen &lt;= 'C');
if(zeichen &gt;= 'y' &amp;&amp; zeichen &lt;= 'B');
if(zeichen &gt;= 'z' &amp;&amp; zeichen &lt;= 'A');

if(zeichen2 = 'A' - (zeichen - 'z');
if(zeichen2 = 'B' - (zeichen - 'y');
if(zeichen2 = 'C' - (zeichen - 'x');
if(zeichen2 = 'D' - (zeichen - 'w');
if(zeichen2 = 'E' - (zeichen - 'v');
if(zeichen2 = 'F' - (zeichen - 'u');
if(zeichen2 = 'G' - (zeichen - 't');
if(zeichen2 = 'H' - (zeichen - 's');
if(zeichen2 = 'I' - (zeichen - 'r');
if(zeichen2 = 'J' - (zeichen - 'q');
if(zeichen2 = 'K' - (zeichen - 'p');
if(zeichen2 = 'L' - (zeichen - 'o');
if(zeichen2 = 'M' - (zeichen - 'n');
if(zeichen2 = 'N' - (zeichen - 'm');
if(zeichen2 = 'O' - (zeichen - 'l');
if(zeichen2 = 'P' - (zeichen - 'k');
if(zeichen2 = 'Q' - (zeichen - 'j');
if(zeichen2 = 'R' - (zeichen - 'i');
if(zeichen2 = 'S' - (zeichen - 'h');
if(zeichen2 = 'T' - (zeichen - 'g');
if(zeichen2 = 'U' - (zeichen - 'f');
if(zeichen2 = 'V' - (zeichen - 'e');
if(zeichen2 = 'W' - (zeichen - 'd');
if(zeichen2 = 'Y' - (zeichen - 'c');
if(zeichen2 = 'X' - (zeichen - 'b');
if(zeichen2 = 'Z' - (zeichen - 'a');

printf (&quot;%c&quot;, zeichen);
printf (&quot;%c&quot;, zeichen2);
getch();

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1132481</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132481</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Wed, 06 Sep 2006 16:04:29 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 16:14:58 GMT]]></title><description><![CDATA[<p>Dir ist wohl immer noch nicht klar, was ich meine. Das hier ist ein vollständiges Programm, probiers aus:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

int main()
{
	char zeichen;
	cin &gt;&gt; zeichen;

	if(zeichen &gt;= 'A' &amp;&amp; zeichen &lt;= 'Z')
		zeichen = 'Z' - (zeichen - 'A');
	else if(zeichen &gt;= 'a' &amp;&amp; zeichen &lt;= 'z')
		zeichen = 'z' - (zeichen - 'a');
	else
	{
		cout &lt;&lt; &quot;Die Eingabe ist nicht korrekt&quot;;
		return -1;
	}
	cout &lt;&lt; zeichen;
	return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1132492</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132492</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Wed, 06 Sep 2006 16:14:58 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 16:21:57 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/13535">@Vampir87</a>: mit der Anzahl aufeinanderfolgender, sich bedenklich ähnelnder Codezeilen steigt die Wahrscheinlichkeit, daß du einen Designfehler begehst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132496</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132496</guid><dc:creator><![CDATA[audacia]]></dc:creator><pubDate>Wed, 06 Sep 2006 16:21:57 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Wed, 06 Sep 2006 16:22:01 GMT]]></title><description><![CDATA[<p>achso ich kenne mich ja noch nicht so aus mit c/c++ danke für den code</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132498</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132498</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Wed, 06 Sep 2006 16:22:01 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Thu, 07 Sep 2006 08:08:17 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>Du kannst dir sogar den ganzen switch sparen und zum Beispiel sowas schreiben:</p>
<pre><code class="language-cpp">// dreht das Alphabet um
if(zeichen &gt;= 'A' &amp;&amp; zeichen &lt;= 'Z')
    zeichen = 'Z' - (zeichen - 'A');
if(zeichen &gt;= 'a' &amp;&amp; zeichen &lt;= 'z')
    zeichen = 'z' - (zeichen - 'a');
</code></pre>
</blockquote>
<p>Hmmmm, portabel das ist aber nicht mehr. In ASCII klappt das natürlich, aber z.B. in EBCDIC nicht. Auch wenn Portabilität nicht jedesmal notwendig ist, würde ich mir das gar nicht angewöhnen....<br />
wenn man sich ein case sparen möchte, bietet sich ein Array eher an....</p>
<p>Entweder so, wie Du schon beschrieben hast mit ein/aus-Map:</p>
<pre><code class="language-cpp">char const ein[] = &quot;ABCDEFGHIJKLMNOPQRSTUVWXYZ&quot;;
char const aus[] = &quot;DZXKFBDIKSJNMNKJVIJFHVNÖLA&quot;;

int findeEinPosition(char c) {
    static const len = strlen(ein);
    int pos = 0;
    while(pos &lt; len) {
        if(ein[pos] == c) return pos;
        ++pos;
    }
    return -1;
}

int main(void) {
    std::string in_str = &quot;Mein Teststring&quot;;
    std::string out_str;
    std::string::iterator it = in_str.begin();
    int pos;

    // string als Container durchgehen - kann man natürlich auch anders machen
    for(std::string::const_iterator end = in_str.end(); end != it; ++it) {
        if(0 &gt; (pos = findeEinPosition(toupper(*it))))
            return -1; // ungültiges Zeichen -&gt; Fehler
        out_str.push_back(aus[pos]);
    }
    return 0;
}
</code></pre>
<p>Oder mit direktem Mapping (unkomfortabler, dafür schneller):</p>
<pre><code class="language-cpp">char cmap[256];

void initmap() {
    memset(cmap, 0xFF, sizeof(cmap));
    cmap[static_cast&lt;size_t&gt;('A')] = 'D'; cmap[static_cast&lt;size_t&gt;('B')] = 'Z'; 
    cmap[static_cast&lt;size_t&gt;('C')] = 'X'; cmap[static_cast&lt;size_t&gt;('D')] = 'K'; 
    cmap[static_cast&lt;size_t&gt;('E')] = 'F'; cmap[static_cast&lt;size_t&gt;('F')] = 'B';
    cmap[static_cast&lt;size_t&gt;('G')] = 'D'; cmap[static_cast&lt;size_t&gt;('H')] = 'I'; 
    cmap[static_cast&lt;size_t&gt;('I')] = 'K'; cmap[static_cast&lt;size_t&gt;('J')] = 'S'; 
    cmap[static_cast&lt;size_t&gt;('K')] = 'J'; cmap[static_cast&lt;size_t&gt;('L')] = 'N';
    cmap[static_cast&lt;size_t&gt;('M')] = 'M'; cmap[static_cast&lt;size_t&gt;('N')] = 'N'; 
    cmap[static_cast&lt;size_t&gt;('O')] = 'K'; cmap[static_cast&lt;size_t&gt;('P')] = 'J'; 
    cmap[static_cast&lt;size_t&gt;('Q')] = 'V'; cmap[static_cast&lt;size_t&gt;('R')] = 'I';
    cmap[static_cast&lt;size_t&gt;('S')] = 'J'; cmap[static_cast&lt;size_t&gt;('T')] = 'F'; 
    cmap[static_cast&lt;size_t&gt;('U')] = 'H'; cmap[static_cast&lt;size_t&gt;('V')] = 'V'; 
    cmap[static_cast&lt;size_t&gt;('W')] = 'N'; cmap[static_cast&lt;size_t&gt;('X')] = 'Ö';
    cmap[static_cast&lt;size_t&gt;('Y')] = 'L'; cmap[static_cast&lt;size_t&gt;('Z')] = 'A';
}

int main(void) {
    std::string in_str = &quot;Mein Teststring&quot;;
    std::string out_str;
    std::string::iterator it = in_str.begin();
    int newc;
    initmap();

    // string als Container durchgehen - kann man natürlich auch anders machen
    for(std::string::const_iterator end = in_str.end(); end != it; ++it) {
        if(0xFF == (newc = cmap[toupper(*it)]))
            return -1; // ungültiges Zeichen -&gt; Fehler
        out_str.push_back(newc);
    }
    return 0;
}
</code></pre>
<p>BTW: Ist eigentlich C und nicht &quot;++&quot; (wenn man mal vom string absieht)...</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132721</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132721</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Thu, 07 Sep 2006 08:08:17 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Thu, 07 Sep 2006 11:19:00 GMT]]></title><description><![CDATA[<p>danke für die Codes, nur bei den vielen Codes kommen wider neue fragen,<br />
da ich noch nicht soweit bin in c/c++ wie z.B. was ist <strong>EBCDIC</strong><br />
oder was mich auch schon die ganze zeit durch den kopf geht für was steht bzw.<br />
was ist <strong>std::</strong> das steht nicht in meinem buch drin <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/1132909</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132909</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Thu, 07 Sep 2006 11:19:00 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Thu, 07 Sep 2006 11:43:31 GMT]]></title><description><![CDATA[<p>Hi Vampir87,</p>
<p><a href="http://de.wikipedia.org/wiki/EBCDIC" rel="nofollow">EBCDIC</a> ist ein &quot;Zeichensatz&quot; ... ASCII ein anderer. Einen Zeichensatz braucht eine Maschine (eher ein Betriebssystem, aber lassen wir mal die Haarspaltereien), um zu wissen, welches Zeichen sie ausgeben soll. Die Maschine &quot;kennt ja nur Nullen und Einsen&quot;. Deswegen braucht man eine &quot;Umsetzungstabelle&quot;, um zu einem bestimmten Wert (z.B. 0x41) den passenden Buchstaben (hier: 'A') auf der Konsole auszugeben.<br />
Ebenso andersherum: Gibst Du über eine Konsole ein 'A' ein, bekommt die Maschine (und das Programm) den Wert 0x41 geliefert (und arbeitet mit dem).</p>
<p>Windows- und Unix-Maschinen arbeiten oft mit ASCII, zOS-Geräte dagegen oftmals mit EBCDIC. Außerdem gibt es jeweils &quot;Varianten&quot; dieser Zeichensätze, z.B. brauchen wir deutsche Umlaute, wohingegen die Spanier ganz andere sprachspezifische Zeichen brauchen. ... da kann man sich mit unportablem Code leicht Feinde machen. <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>Vampir87 schrieb:</p>
<blockquote>
<p>...für was steht bzw.<br />
was ist <strong>std::</strong> das steht nicht in meinem buch drin <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>
</blockquote>
<p>Das ist ein <a href="http://de.wikipedia.org/wiki/Namespace" rel="nofollow">Namespace</a>. Da gibt's viel drüber zu lesen.<br />
Ganz kurz: Damit man mit den ganzen Klassen-, Funktions-, Konstanzen-, ...-namen sich nicht in die Quere kommt, kann man sie in Namespaces organisieren. Da ist dann std::vector eine Klasse und boost::vector eine ganz andere.<br />
Vereinfachen kann man den Zugriff per &quot;using&quot; (nachlesen !), aber damit sollte mn vorsichtig sein, weil man sich damit wieder in Mehrdeutigkeiten verheddern kann.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132927</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132927</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Thu, 07 Sep 2006 11:43:31 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Thu, 07 Sep 2006 12:48:55 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/20068">@Michael</a> E.</p>
<p>Was soll eigentlich das</p>
<pre><code>if(zeichen &gt;= 'A' &amp;&amp; zeichen &lt;= 'Z') 
        zeichen = 'Z' - (zeichen - 'A');
</code></pre>
<p>bedeuten?</p>
<p>Das wandelt doch <em>zeichen</em> in <em>'Z'+'A' - zeichen</em> um <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1132998</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1132998</guid><dc:creator><![CDATA[Javaner]]></dc:creator><pubDate>Thu, 07 Sep 2006 12:48:55 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Thu, 07 Sep 2006 14:39:26 GMT]]></title><description><![CDATA[<p>danke für die erklärung <strong>Simon2</strong>, danke noch mal für die Codes, die wahren alle sehr hilfreich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1133063</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1133063</guid><dc:creator><![CDATA[Vampir87]]></dc:creator><pubDate>Thu, 07 Sep 2006 14:39:26 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Fri, 08 Sep 2006 07:44:02 GMT]]></title><description><![CDATA[<p>Gern geschehen !</p>
<p>Dafür ist das Forum ja da. <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="😃"
    /></p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1133455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1133455</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Fri, 08 Sep 2006 07:44:02 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Fri, 08 Sep 2006 12:42:50 GMT]]></title><description><![CDATA[<p>Javaner schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/20068">@Michael</a> E.</p>
<p>Was soll eigentlich das</p>
<pre><code>if(zeichen &gt;= 'A' &amp;&amp; zeichen &lt;= 'Z') 
        zeichen = 'Z' - (zeichen - 'A');
</code></pre>
<p>bedeuten?</p>
<p>Das wandelt doch <em>zeichen</em> in <em>'Z'+'A' - zeichen</em> um <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
</blockquote>
<p>Nö, zählt, der wievielte Buchstabe im Alphabet &quot;zeichen&quot; ist und zieht dann diese Zahl von Z ab.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1133667</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1133667</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Fri, 08 Sep 2006 12:42:50 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Fri, 08 Sep 2006 13:00:38 GMT]]></title><description><![CDATA[<p>Simon2 schrieb:</p>
<blockquote>
<p>Hmmmm, portabel das ist aber nicht mehr. In ASCII klappt das natürlich, aber z.B. in EBCDIC nicht. Auch wenn Portabilität nicht jedesmal notwendig ist, würde ich mir das gar nicht angewöhnen....</p>
</blockquote>
<p>Also ich leb gut mit dieser Inkompatibilität. Du denkst, deins sei besser? Wieso benutzt du dann char? So bist du nicht mehr zu Unicode (der IMHO weiter verbreitet ist als EBCDIC) inkompatibel.</p>
<blockquote>
<p>wenn man sich ein case sparen möchte, bietet sich ein Array eher an....</p>
</blockquote>
<p>Als was?</p>
<blockquote>
<p>Entweder so, wie Du schon beschrieben hast mit ein/aus-Map:<br />
[...]</p>
</blockquote>
<p>Schau dir mal die Member von std::string an, die können dir viel Arbeit ersparen.</p>
<blockquote>
<p>Oder mit direktem Mapping (unkomfortabler, dafür schneller):<br />
[...]</p>
</blockquote>
<p>Wieso schneller? Es ist eh so unkomfortabel, dass mans erst in <strong>Extrem</strong>situationen benutzen sollte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1133686</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1133686</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Fri, 08 Sep 2006 13:00:38 GMT</pubDate></item><item><title><![CDATA[Reply to C&#x2F;C++ automatisch Großbuchstaben on Fri, 08 Sep 2006 13:16:48 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>...<br />
Also ich leb gut mit dieser Inkompatibilität. ...</p>
</blockquote>
<p>Mag sein, da wir hier aber grundsätzlich Mulriplattformentwicklung machen (selber Code muß auf Windows, Unix und zOS (früher sogar noch OS2) laufen), verbietet sich das bei uns.</p>
<p>char benutze ich hier, damit die GrundIdee klarer wird. Insgesamt habe ich hier nur ein Beispiel und keinen &quot;echten Code&quot; dargestellt, an dem es noch eine Menge Verbesserungspotential gibt (u.a. die string-Möglichkeiten). Hier geht es um die Grundidee, &quot;Buchstaben portabel in einem Programm zu verwenden&quot; und daneben noch &quot;Mapping via Arry statt switch-case&quot; (OK, ein wenig auf de String als Container wollte ich auch noch hinweisen) - keinesfalls wollte ich alle verfügbaren Programmiertechniken und -stile darstellen.</p>
<p>Michael E. schrieb:</p>
<blockquote>
<p>...</p>
<blockquote>
<p>wenn man sich ein case sparen möchte, bietet sich ein Array eher an....</p>
</blockquote>
<p>Als was?</p>
</blockquote>
<p>als &quot;switch-case&quot; ?! ...</p>
<p>Michael E. schrieb:</p>
<blockquote>
<p>...<br />
...</p>
<blockquote>
<p>Oder mit direktem Mapping (unkomfortabler, dafür schneller):<br />
[...]</p>
</blockquote>
<p>Wieso schneller? ...</p>
</blockquote>
<p>Weil man pro Buchstaben nur einen Indexzugriff und keine Suche mehr hat.</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1133705</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1133705</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Fri, 08 Sep 2006 13:16:48 GMT</pubDate></item></channel></rss>