<?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[Hilfe bei kleinem Programm]]></title><description><![CDATA[<p>Hallo Leute,<br />
Ich habe ein Problem, und zwar muss ich aufgrund einer Projektarbeit mehrere Programme beschreiben und dokumentieren, allerdings habe ich bei diesem Programm ein paar verständnissprobleme. Konnte leider auch nichts finden was mir das ganze ein bisschen erklären könnte...<br />
Könnte mir da einer helfen und in den Zeilen 42-84 kurze Komentare dahinter schreiben, am besten immer nur 3-4Wörter</p>
<p>Das wäre super nett, da ich da momentan nicht weiter komme.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;malloc.h&gt;
#include &lt;string.h&gt;

class strings
// contains all sort of nonsense keeping students busy
{
private:
	char *myStr;					// pointer to string to be allocated
	unsigned int length;			// maximum length of string		
public:
	strings(int maxlen = 200);	// constructor
	~strings();						// destructor
	void Display();
	void Insert(char s[]);		// inserts new string contents
	int count();						// reports actual length of string
	void Chinese();				// produces 'Chinese' version of contents
	void Capital();					// changes to uppercase characters
	void Cut();						// cuts string after first blanc
};

strings::strings(int maxlen)
{                       	// allocates new memory for string
	myStr = (char*)malloc(length = maxlen);
	myStr[0] = '\0';				// terminates string to be empty
}

strings::~strings()
{
	free(myStr);					// deallocates memory
}

void strings::Display()
{
	printf(&quot;%s\n&quot;, myStr);		// prints string to display
}

void strings::Insert(char s[])
{
	if (strlen(s) &lt; length)		// new string exeeds allocated memory?
		strcpy(myStr, s);			// no, ok, insert it
}

int strings::count()
{return strlen(myStr);
}

void strings::Chinese()
{
	for(int i=0; i&lt;strlen(myStr);i++){

		if(myStr[i]=='r'){
		myStr[i]='l';
		}

		else if (myStr[i]=='R') {
	    myStr[i]='L';
		}

	}

}

void strings::Capital()
{	
	for(int i=0; i&lt;strlen(myStr);i++)
	{
		if(myStr[i] &gt; 96 &amp;&amp; myStr[i] &lt; 123)
		{
		 myStr[i] -= 32;
		}
	}
}

void strings::Cut()
{

	for(int i=0; i&lt;strlen(myStr);i++)
	{

		if(myStr[i]==32) 
		{				 
		myStr[i]='\0';
		}

	}
}

// test environment for functions
void main()
{
	strings object_s(250);
	object_s.Insert(&quot;Frohe Ostern!&quot;);
	object_s.Display();
	printf(&quot;%i character\n&quot;, object_s.count());
	object_s.Chinese();
	object_s.Display();
	object_s.Capital();
	object_s.Display();
	object_s.Cut();
	object_s.Display();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/243945/hilfe-bei-kleinem-programm</link><generator>RSS for Node</generator><lastBuildDate>Sat, 19 Sep 2026 14:25:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/243945.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 23 Jun 2009 10:28:53 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 10:28:53 GMT]]></title><description><![CDATA[<p>Hallo Leute,<br />
Ich habe ein Problem, und zwar muss ich aufgrund einer Projektarbeit mehrere Programme beschreiben und dokumentieren, allerdings habe ich bei diesem Programm ein paar verständnissprobleme. Konnte leider auch nichts finden was mir das ganze ein bisschen erklären könnte...<br />
Könnte mir da einer helfen und in den Zeilen 42-84 kurze Komentare dahinter schreiben, am besten immer nur 3-4Wörter</p>
<p>Das wäre super nett, da ich da momentan nicht weiter komme.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;malloc.h&gt;
#include &lt;string.h&gt;

class strings
// contains all sort of nonsense keeping students busy
{
private:
	char *myStr;					// pointer to string to be allocated
	unsigned int length;			// maximum length of string		
public:
	strings(int maxlen = 200);	// constructor
	~strings();						// destructor
	void Display();
	void Insert(char s[]);		// inserts new string contents
	int count();						// reports actual length of string
	void Chinese();				// produces 'Chinese' version of contents
	void Capital();					// changes to uppercase characters
	void Cut();						// cuts string after first blanc
};

strings::strings(int maxlen)
{                       	// allocates new memory for string
	myStr = (char*)malloc(length = maxlen);
	myStr[0] = '\0';				// terminates string to be empty
}

strings::~strings()
{
	free(myStr);					// deallocates memory
}

void strings::Display()
{
	printf(&quot;%s\n&quot;, myStr);		// prints string to display
}

void strings::Insert(char s[])
{
	if (strlen(s) &lt; length)		// new string exeeds allocated memory?
		strcpy(myStr, s);			// no, ok, insert it
}

int strings::count()
{return strlen(myStr);
}

void strings::Chinese()
{
	for(int i=0; i&lt;strlen(myStr);i++){

		if(myStr[i]=='r'){
		myStr[i]='l';
		}

		else if (myStr[i]=='R') {
	    myStr[i]='L';
		}

	}

}

void strings::Capital()
{	
	for(int i=0; i&lt;strlen(myStr);i++)
	{
		if(myStr[i] &gt; 96 &amp;&amp; myStr[i] &lt; 123)
		{
		 myStr[i] -= 32;
		}
	}
}

void strings::Cut()
{

	for(int i=0; i&lt;strlen(myStr);i++)
	{

		if(myStr[i]==32) 
		{				 
		myStr[i]='\0';
		}

	}
}

// test environment for functions
void main()
{
	strings object_s(250);
	object_s.Insert(&quot;Frohe Ostern!&quot;);
	object_s.Display();
	printf(&quot;%i character\n&quot;, object_s.count());
	object_s.Chinese();
	object_s.Display();
	object_s.Capital();
	object_s.Display();
	object_s.Cut();
	object_s.Display();
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1731496</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731496</guid><dc:creator><![CDATA[RedLine]]></dc:creator><pubDate>Tue, 23 Jun 2009 10:28:53 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 10:32:27 GMT]]></title><description><![CDATA[<p>Falsches Forum und falsche main Signatur!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731500</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731500</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Tue, 23 Jun 2009 10:32:27 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 10:47:58 GMT]]></title><description><![CDATA[<p>Welches Forum denn??? Dachte das wäre C++</p>
<p>Das mit dem main wurde von unserem Professor so geschrieben und auch so gezeigt <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="😮"
    /><br />
Was ist denn daran falsch?</p>
<p>Sorry wenn es das falsche Forum ist aber ich hab keine Ahnung wo sonst damit hin <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/1731511</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731511</guid><dc:creator><![CDATA[RedLine]]></dc:creator><pubDate>Tue, 23 Jun 2009 10:47:58 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 10:56:01 GMT]]></title><description><![CDATA[<p>richtiges forum.</p>
<p>man schreibt</p>
<p>int main ()</p>
<p>void war nie standard. aber sags deinem prof nicht, der hat dich sonst vielleicht auf dem kieker <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>wieso willst du kommentare? die methoden haben doch fantastisch sprechende namen, da steht doch, was die methoden machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731516</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731516</guid><dc:creator><![CDATA[elise]]></dc:creator><pubDate>Tue, 23 Jun 2009 10:56:01 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 11:01:38 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int strings::count()
{return strlen(myStr); //strlen: länge
}

void strings::Chinese()
{
	for(int i=0; i&lt;strlen(myStr);i++){

		if(myStr[i]=='r'){
		myStr[i]='l'; //ersetzte r mit l
		}

		else if (myStr[i]=='R') {
	    myStr[i]='L'; //ebenso aber gross
		}

	}

}

void strings::Capital()
{	
	for(int i=0; i&lt;strlen(myStr);i++)
	{
		if(myStr[i] &gt; 96 &amp;&amp; myStr[i] &lt; 123)
		{
		 myStr[i] -= 32; //großbuchstabe, ascii tabelle aufmachen und sehen
                                 //wo du nach -32 hinkommst ;)
		}
	}
}

void strings::Cut()
{

	for(int i=0; i&lt;strlen(myStr);i++)
	{

		if(myStr[i]==32) 
		{				 
		myStr[i]='\0'; //schneide ab, indem du \0 setzt (ende)
		}

	}
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1731520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731520</guid><dc:creator><![CDATA[elise]]></dc:creator><pubDate>Tue, 23 Jun 2009 11:01:38 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 11:04:47 GMT]]></title><description><![CDATA[<p>RedLine schrieb:</p>
<blockquote>
<p>Welches Forum denn??? Dachte das wäre C++</p>
</blockquote>
<p>Bis auf die Klasse an sich (ohne Implementationen) und den Header <code>&lt;iostream&gt;</code> , welcher du gar nicht benötigst, ist in deinem Code alles C. Falls deine Professor dir dies beigebracht hat, dann gratuliere ich dir. Du bist Student Nummer 9999999999999999... (sehr grosse Zahl), welcher einen unfähigen Professor hat, welcher kein C++ kann.</p>
<p>Zu deiner Frage:<br />
Stell bitte ein wenig konkretere Fragen. Was genau verstehst du nicht?</p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731523</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731523</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Tue, 23 Jun 2009 11:04:47 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 11:06:24 GMT]]></title><description><![CDATA[<p>Laut ISO-Standard wird die main-Funktion als integer deklariert.</p>
<pre><code class="language-cpp">int strings::count() //integer, erwartet einen dezimalen rückgabewert
{
 return strlen(myStr); //strlen( ) erwartet einen string als parameter und gibt
                       //die Zeichenlänge des strings zurück.
}

void strings::Chinese()
{
    for(int i=0; i&lt;strlen(myStr);i++){ //inkrementiere i, bis der string 
                                       //komplett durchlaufen wurde

        if(myStr[i]=='r'){ //falls ein element des strings = &quot;r&quot; ist
        myStr[i]='l'; //übernehme das literal &quot;l&quot; für das element
        }

        else if (myStr[i]=='R') { //anderenfalls, wenn das element = &quot;r&quot; ist
        myStr[i]='L'; //übernehme das literal &quot;L&quot; für das element
        }

    }

}

void strings::Capital()
{   
    for(int i=0; i&lt;strlen(myStr);i++) //loop für eine komplette string länge
    {
        if(myStr[i] &gt; 96 &amp;&amp; myStr[i] &lt; 123) //ist ein element größer als 96 und
                                            //kleiner als 123
        {
         myStr[i] -= 32; //dann subtrahiere davon 32
        }
    }
}

void strings::Cut()
{

    for(int i=0; i&lt;strlen(myStr);i++) //loop für eine komplette string länge
    {

        if(myStr[i]==32) //falls ein string = 32 ist
        {                 
        myStr[i]='\0'; //definiere ihn mit einem '\0'-byte (zeilenumbruch)
        }

    }
}
</code></pre>
<p>EDIT:<br />
Hoppala, gerade war es nur 1 Antwort...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731525</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Tue, 23 Jun 2009 11:06:24 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 13:35:58 GMT]]></title><description><![CDATA[<blockquote>
<p>Laut ISO-Standard wird die main-Funktion als integer deklariert</p>
</blockquote>
<p>oO<br />
Vll besser so:</p>
<p>Laut ISO-Standard besitzt die main-Funktion einen Rückgabewert: int<br />
dort steht dann imho so was in der richtung drin:<br />
erlaubt sind folgende signaturen:<br />
`</p>
<p>int main(int argc, char *argv[])</p>
<p>int main(int argc, char**argv)</p>
<p>int main()</p>
<p>`<br />
und dann steht da imho noch so was, wie:<br />
[es sind auch alle anderen signaturen erlaubt, so lange die main-fkt den rückgabetyp int hat]<br />
bin nur gerade (ma wieder ^^) zu faul, genau nachzugucken...</p>
<p>bb</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731602</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731602</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Tue, 23 Jun 2009 13:35:58 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 16:33:53 GMT]]></title><description><![CDATA[<p>Super, danke das bringt mich schonmal ein großes Stück vorran <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>Acchhhssoooo, ja das wusste ich nicht, dachte mein Prof. könnte das und laufen tut es ja auch so <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="😉"
    /> Aber jetzt weis ich ja bescheid.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731706</guid><dc:creator><![CDATA[RedLine]]></dc:creator><pubDate>Tue, 23 Jun 2009 16:33:53 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 16:37:24 GMT]]></title><description><![CDATA[<p>Btw: Der Typ einer Funktion gehört nicht zur Signatur.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731710</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731710</guid><dc:creator><![CDATA[C++0r]]></dc:creator><pubDate>Tue, 23 Jun 2009 16:37:24 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 17:44:28 GMT]]></title><description><![CDATA[<p>Es haben ja schon einige gesagt, aber dein Prof hat wirklich Ahnung von nichts. Da lernst du mehr aus einem Second-Hand Tutorial aus dem Internet über C++. Erstmal vermischt er C mit C++, autsch! Wie schon gesagt, gehört zu dem Standard, dass die main int zurückgibt. Meine IDE verlangt sogar von mir, dass main int zurückgibt, ansonsten lässt es mich nicht compilieren. Ich kenn mich kaum mit C aus, aber ich glaube mit free rumzuhantieren ist nicht gut (muss jetzt nicht stimmen, vielleicht hab ich mich verhört, deswegen verbessert mich falls es falsch ist). Falls du den Code wirklich so belassen willst, kannst du iostream rausnehmen, da du sowieso nichts aus C++ benutzt, außer eine Klasse und kannst stattdessen stdio.h benutzen.</p>
<p>Nun zu deiner Codeerklärung.<br />
strings::count() sollte eigentlich klar sein. Es gibt die größe deines &quot;Strings&quot; zurück. An deiner Stelle würde ich aber das count in z.B. size oder length umbennen, denn deine Methode zählt nichts, sondern gibt einen Wert zurück. Die Methode von string, heisst auch size und zählt auch nichts.<br />
Die Methode Chinese versucht einen chinesischen Dialekt nachzumachen und geht Zeichen für Zeichen den &quot;String&quot; durch und sucht nach einem &quot;r&quot; oder &quot;R&quot; und ersetzt es durch ein &quot;l&quot; oder &quot;L&quot;.<br />
Deine Methode Capital ersetzt jeden kleinen Buchstaben in einen großen. Such in Google nach &quot;ASCII Tabelle&quot; und schau mal nach 96 und 123. 96 ist &quot;`&quot; und 123 &quot;{&quot;. Dann wird in der for-Schleife jedes Zeichen geprüft, ob es über 96 und unter 123 ist. D.h. die Zahl muss min. 97 oder max. 122 sein.<br />
In C++ kannst du nämlich z.B. sowas machen:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

int main()
{
    char test_char = 97;
    std::cout &lt;&lt; test_char;
    //bzw.
    int test_int = 'a'
    std::cout &lt;&lt; test_int;
}
</code></pre>
<p>Die Ausgabe wird &quot;a&quot; und einmal &quot;97&quot; sein.<br />
Nun zur letzten Methode, deine Cut Methode.<br />
Diese geht wieder jedes Zeichen in deinem &quot;String&quot; durch und schaut nach einem Leerzeichen. Wird eins gefunden, wird dort das Nullzeichen gesetzt, was den Rest des Strings terminiert.</p>
<p>Ich hoffe ich konnte helfen.</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731744</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731744</guid><dc:creator><![CDATA[freaky]]></dc:creator><pubDate>Tue, 23 Jun 2009 17:44:28 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 18:08:03 GMT]]></title><description><![CDATA[<blockquote>
<p>Es haben ja schon einige gesagt, aber dein Prof hat wirklich Ahnung von nichts.</p>
</blockquote>
<p>Du aber, hm?<br />
Ich habe das Gefühl, dass du und RedLine nicht sehr bewandert seid. Entweder stammt der Code nicht von einem Professor oder er versucht euch C zu lehren.</p>
<blockquote>
<p>Da lernst du mehr aus einem Second-Hand Tutorial aus dem Internet über C++.</p>
</blockquote>
<p>Na du musst es ja wissen...</p>
<blockquote>
<p>compilieren</p>
</blockquote>
<p>Unbewanderte schreiben kompilieren mit c, hihi...</p>
<blockquote>
<p>mit free rumzuhantieren ist nicht gut</p>
</blockquote>
<p>Warum nicht? Ist daraus zu schliessen, dass du malloc( ) auch nicht gut findest?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731752</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731752</guid><dc:creator><![CDATA[Kóyaánasqatsi]]></dc:creator><pubDate>Tue, 23 Jun 2009 18:08:03 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Tue, 23 Jun 2009 20:07:54 GMT]]></title><description><![CDATA[<p>Was willst du jetzt eigentlich von mir? Ich helfe hier ganz normal und ich denke mal, es gibt nicht wirklich Fehler in meinem Text. Willst du mir sagen das ich mit dem was ich geschrieben habe nicht Recht habe? Es neigen immer mehr Leute dazu unnötige Kommentare abzugeben die den Thread kein Stück weiterbringen. Einer dieser Leute ist jetzt z.B. du. Anscheinend meinst du ich hab keine Ahnung von C++, dass ist dann deine Meinung. Willst du mir also sagen, dass man durch den Code mehr lernt als durch ein billiges C++ Tutorial im Internet? Wohl kaum. Dein Wortschatz scheint auch ein wenig begrenzt zu sein:</p>
<blockquote>
<p>nicht sehr bewandert</p>
</blockquote>
<blockquote>
<p>Unbewanderte</p>
</blockquote>
<p>Zwar hast du was geschrieben, jedoch glaube ich das mein Post ein wenig mehr verständlich ist.<br />
Sowas wie</p>
<pre><code class="language-cpp">myStr[j] -= 32; //dann subtrahiere davon 32
</code></pre>
<p>ist wohl selbsterklärend...<br />
Und klar Kóyaánasqatsi, du hast mit deiner Aussage einen klassen Widerspruch geleistet.<br />
&quot;Entweder nicht von einem Prof, oder er versucht euch C zu lehren&quot;...<br />
Deswegen bringt er ihnen auch C mit Klassen bei <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /><br />
Über free() meinte ich extra, dass ich mir nicht sicher bin und ob <em>ich</em> es gut finde habe ich auch nicht geschrieben. Wenn wir in einem C++ Forum sind und ich teilweisen C++ Code sehe, dann schreibe ich wohl das free() bzw. malloc() nicht gut ist oder? Wofür gibt es new und delete?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1731807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1731807</guid><dc:creator><![CDATA[freaky]]></dc:creator><pubDate>Tue, 23 Jun 2009 20:07:54 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Wed, 24 Jun 2009 19:47:40 GMT]]></title><description><![CDATA[<p>Bitte kein Streit hier <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>
<p>Habe noch eine kleine Frage undzwar</p>
<pre><code class="language-cpp">strings object_s(250);
</code></pre>
<p>Bedeutet das, das die Stringlänge 250 ist?</p>
<p>Was für mich unlogisch wäre, da die max.stringlänge ja vorher schon mit 200 angeben wurde???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1732363</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1732363</guid><dc:creator><![CDATA[RedLine]]></dc:creator><pubDate>Wed, 24 Jun 2009 19:47:40 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Wed, 24 Jun 2009 20:02:08 GMT]]></title><description><![CDATA[<p>RedLine schrieb:</p>
<blockquote>
<pre><code class="language-cpp">strings object_s(250);
</code></pre>
<p>Bedeutet das, das die Stringlänge 250 ist?</p>
<p>Was für mich unlogisch wäre, da die max.stringlänge ja vorher schon mit 200 angeben wurde???</p>
</blockquote>
<p>Die =200 im Konstruktor sind ein Default-Wert. D.h. wenn Du keine Länge angibst wird ein char-Feld der Länge 200 angelegt.</p>
<p>RedLine schrieb:</p>
<blockquote>
<p>.. ja das wusste ich nicht, dachte mein Prof. könnte das und laufen tut es ja auch so</p>
</blockquote>
<p>Nein - tut es nicht. Zumindest nicht in jedem Fall. Füge doch mal in dem kleinen main folgendes ein:</p>
<pre><code class="language-cpp">void malsehn( object_s x )
{
    std::cout &lt;&lt; &quot;der String hat die Laenge: &quot; &lt;&lt; x.count() &lt;&lt; std::endl;
}
// test environment for functions
void main()
{
    strings object_s(250);
    object_s.Insert(&quot;Frohe Ostern!&quot;);
    malsehn( object_s );
    object_s.Display(); 
    // usw.
</code></pre>
<p>das führt zu undefiniertem Verhaltem - im Debug-Mode sollte sich eine aussagekräftige Fehlermeldung zeigen.</p>
<p>Abgesehen davon enthält der Code noch ca. ein Dutzend mehr oder weniger schwerer Fehler. Und ich hatte auf Grund dieses Kommentars in Zeile 6</p>
<pre><code class="language-cpp">class strings
// contains all sort of nonsense keeping students busy
</code></pre>
<p>angenommen, es ist die Aufgabe der Studenten, die alle zu finden - oder?</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1732374</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1732374</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Wed, 24 Jun 2009 20:02:08 GMT</pubDate></item><item><title><![CDATA[Reply to Hilfe bei kleinem Programm on Wed, 24 Jun 2009 20:29:05 GMT]]></title><description><![CDATA[<p>Eigentlich war das nicht die Aufgabe <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>Habe aber auch schon einige beseitigt mit das Programm überhaupt lief <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1732389</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1732389</guid><dc:creator><![CDATA[RedLine]]></dc:creator><pubDate>Wed, 24 Jun 2009 20:29:05 GMT</pubDate></item></channel></rss>