<?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[falscher startcode?]]></title><description><![CDATA[<p>moin, ich habe ein kleines Problem.<br />
ich habe ein paar Programme mit Visual studio programmiert und bei allen gibt es den gleichen fehler. Die programme lassen sich zwar compilieren aber beim aufruf eigener Funktionen wird das Programm unterbrochen. Und zwar bei<br />
mainret = main(argc, argv, envp);<br />
in der datei crtexe.c</p>
<p>Also zB geht es in dem Programm nur darum mal eine Liste zu erstellen, sicher is der code noch nicht ganz richtig..(ich seh noch nicht so ganz bei den zeigern durch) aber ich denke mal das bekomme ich schon noch hin...aufjeden fall kommt beim ausführen der erwähnte fehler...(compilieren lässt es sich)</p>
<pre><code class="language-cpp">#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

typedef struct Listele *IntList;
typedef struct Listele
{
    int zahl;
    IntList next;
}Listele;

void insert(IntList *l, int n){ 
     IntList help; 
     help=(IntList) malloc(sizeof(Listele)); 
	 while(1){ 
		 if ((*l)-&gt;next == NULL) { 
			 help-&gt;next=NULL; 
			 (*l) = help; 
			 help-&gt;zahl=n; 
			 return; 
		 } 
		 else{ 
			 if ((*l)-&gt;zahl &gt; n){  
				 int help2=(*l)-&gt;zahl;  
				 (*l)-&gt;zahl=n;  
				 help-&gt;next=(*l)-&gt;next;  
				 (*l)-&gt;next=help;  
				 help-&gt;zahl=help2;  
				 return;  
			 } 
		 } 
         (*l)=(*l)-&gt;next; 
     } 
} 

int main()
{
	IntList a;
    a=(IntList) malloc(sizeof(Listele));
    insert(&amp;a,5);
    insert(&amp;a,1);
    insert(&amp;a,2);
    insert(&amp;a,3);
    insert(&amp;a,5);
    insert(&amp;a,8);
    insert(&amp;a,6);
    insert(&amp;a,3);
    while (a-&gt;next != NULL)
    {
        printf(&quot;%d \n&quot;,a-&gt;zahl);
        a=a-&gt;next;
    }
    return 0;
}
</code></pre>
<p>also das projekt ist eine konsolenanwendung und ich hab es einmal mit nem leeren projekt ausprobiert..ka ob deswegen vlcht irgendetwas fehlt...<br />
ich hab gelesen dass das mit irgendeinem startcode zu tun hat...weiß jemnad was ich ändern muss??</p>
<p>Ich danke schonmal für die antworten</p>
<p>PS.: bin neu im Forum..ich hoffe mal ich hab alles richtig gemacht...</p>
<p>Gruß Matze</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/262282/falscher-startcode</link><generator>RSS for Node</generator><lastBuildDate>Sun, 06 Sep 2026 19:46:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/262282.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 03 Mar 2010 16:48:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 17:10:11 GMT]]></title><description><![CDATA[<p>moin, ich habe ein kleines Problem.<br />
ich habe ein paar Programme mit Visual studio programmiert und bei allen gibt es den gleichen fehler. Die programme lassen sich zwar compilieren aber beim aufruf eigener Funktionen wird das Programm unterbrochen. Und zwar bei<br />
mainret = main(argc, argv, envp);<br />
in der datei crtexe.c</p>
<p>Also zB geht es in dem Programm nur darum mal eine Liste zu erstellen, sicher is der code noch nicht ganz richtig..(ich seh noch nicht so ganz bei den zeigern durch) aber ich denke mal das bekomme ich schon noch hin...aufjeden fall kommt beim ausführen der erwähnte fehler...(compilieren lässt es sich)</p>
<pre><code class="language-cpp">#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

typedef struct Listele *IntList;
typedef struct Listele
{
    int zahl;
    IntList next;
}Listele;

void insert(IntList *l, int n){ 
     IntList help; 
     help=(IntList) malloc(sizeof(Listele)); 
	 while(1){ 
		 if ((*l)-&gt;next == NULL) { 
			 help-&gt;next=NULL; 
			 (*l) = help; 
			 help-&gt;zahl=n; 
			 return; 
		 } 
		 else{ 
			 if ((*l)-&gt;zahl &gt; n){  
				 int help2=(*l)-&gt;zahl;  
				 (*l)-&gt;zahl=n;  
				 help-&gt;next=(*l)-&gt;next;  
				 (*l)-&gt;next=help;  
				 help-&gt;zahl=help2;  
				 return;  
			 } 
		 } 
         (*l)=(*l)-&gt;next; 
     } 
} 

int main()
{
	IntList a;
    a=(IntList) malloc(sizeof(Listele));
    insert(&amp;a,5);
    insert(&amp;a,1);
    insert(&amp;a,2);
    insert(&amp;a,3);
    insert(&amp;a,5);
    insert(&amp;a,8);
    insert(&amp;a,6);
    insert(&amp;a,3);
    while (a-&gt;next != NULL)
    {
        printf(&quot;%d \n&quot;,a-&gt;zahl);
        a=a-&gt;next;
    }
    return 0;
}
</code></pre>
<p>also das projekt ist eine konsolenanwendung und ich hab es einmal mit nem leeren projekt ausprobiert..ka ob deswegen vlcht irgendetwas fehlt...<br />
ich hab gelesen dass das mit irgendeinem startcode zu tun hat...weiß jemnad was ich ändern muss??</p>
<p>Ich danke schonmal für die antworten</p>
<p>PS.: bin neu im Forum..ich hoffe mal ich hab alles richtig gemacht...</p>
<p>Gruß Matze</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1863909</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863909</guid><dc:creator><![CDATA[19matz91]]></dc:creator><pubDate>Wed, 03 Mar 2010 17:10:11 GMT</pubDate></item><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 17:11:08 GMT]]></title><description><![CDATA[<p>19matz91 schrieb:</p>
<blockquote>
<p>moin, ich habe ein kleines Problem. In der Uni konnte ich die meisten Programme die ich geschrieben habe problemlos compilieren.</p>
</blockquote>
<p>Kompilieren ja. Aber ausführen?</p>
<p>19matz91 schrieb:</p>
<blockquote>
<p>Doch die Programme die ich zu Hause mit Visual studio programmiert habe, werden beim aufruf eigener Funktionen immer abgebrochen.</p>
</blockquote>
<p>Du hast ja auch &quot;UB&quot; (undefined behaviour). Du legst Listen-Elemente an, in denen Datenmüll steht. Der next-Zeiger ist uninitialisiert, Du dereferenzierst ihn aber mehrfach.</p>
<p>Ich würde Dir auch empfehlen, keinen typedef-Namen für einfache Zeiger anzulegen und von den Vorzügen von C++ gebrauch zu machen. structs brauchen kein extra typedef. malloc+cast/free kann durch new/delete ersetzt werden. Referenzen auf Zeiger sind in diesem Falle praktisch:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

struct ListElem {
   int datum;
   ListElem* next;
};

void einfuegen(ListElem * &amp; liste, int dat)
{
   ListElem* neu = new ListElem;
   neu-&gt;datum = dat;
   neu-&gt;next = liste;
   liste = neu;
}

void alles_loeschen(ListElem * &amp; liste)
{
   if (liste) {
      alles_loeschen(liste-&gt;next);
      delete liste;
      liste = 0;
   }
}

int main()
{
   ListElem* start = 0;
   einfuegen(start,23);
   einfuegen(start,42);
   for (ListElem* p = start; p; p = p-&gt;next) {
      std::cout &lt;&lt; p-&gt;datum &lt;&lt; '\n';
   }
   alles_loeschen(start);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1863916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863916</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Wed, 03 Mar 2010 17:11:08 GMT</pubDate></item><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 17:18:45 GMT]]></title><description><![CDATA[<p>Das sieht mir nicht so aus, als wollte der Threadersteller in C++ schreiben, denn es handelt sich um syntaktisch richtiges C. An der Tatsache, dass es semantisch ziemlicher Unsinn ist und undefiniertes Verhalten verursacht, ändert dies natürlich nichts. Das wird dann wahrscheinlich auch der Grund für die Probleme sein, wie krümelkacker schon sagte. Aber im C Forum kann sicherlich besser geholfen werden, als mit einer alternativen C++-Lösung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1863919</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863919</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 03 Mar 2010 17:18:45 GMT</pubDate></item><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 17:38:52 GMT]]></title><description><![CDATA[<p>jo...das sollte c++ sein..^^<br />
mm ok das Programm ist unsinn...ich habe wie gesagt das ganze hin und her referenzieren mit den zeigern noch ni ganz verstanden...das soll aber ni das problem sein...</p>
<p>auch wenn ich krümelkackers code compiliere bekomme ich 102 fehlermedungen in irgneedeiner cstdio.<br />
Wieso bekomme ich ständig fehlermeldungen in anderen dateien...ist da stdio ni richtig eingebunden oder was könnte da lossein??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1863923</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863923</guid><dc:creator><![CDATA[19matz91]]></dc:creator><pubDate>Wed, 03 Mar 2010 17:38:52 GMT</pubDate></item><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 17:42:08 GMT]]></title><description><![CDATA[<p>19matz91 schrieb:</p>
<blockquote>
<p>auch wenn ich krümelkackers code compiliere bekomme ich 102 fehlermedungen in irgneedeiner cstdio.</p>
</blockquote>
<p>Komisch. <a href="http://codepad.org/aQpPOxFT" rel="nofollow">Hier</a> geht's. Musst Du vielleicht mal in die Dokumentation Deines Compilers nachschauen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1863926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863926</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Wed, 03 Mar 2010 17:42:08 GMT</pubDate></item><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 18:12:02 GMT]]></title><description><![CDATA[<p>Du speicherst das Beispiel von Krümelkacker jetzt aber nicht als .c ab, oder?<br />
cstdio ist der C++-Header für das stdio.h in C. Wird ein C-Compiler also nicht finden...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1863932</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863932</guid><dc:creator><![CDATA[l&#x27;abra d&#x27;or]]></dc:creator><pubDate>Wed, 03 Mar 2010 18:12:02 GMT</pubDate></item><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 18:23:08 GMT]]></title><description><![CDATA[<p>Erst präsentierst du einen lupenreiner C Code. Dann hast du 1000 Fehlermeldungen beim Compilieren eines korrekten C++ Programms. Und du behauptest trotzdem, du willst C++ machen?<br />
<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/1863935</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863935</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Wed, 03 Mar 2010 18:23:08 GMT</pubDate></item><item><title><![CDATA[Reply to falscher startcode? on Wed, 03 Mar 2010 18:43:41 GMT]]></title><description><![CDATA[<p>super...thx...=)jetzt geht krümelkackers code<br />
ein paar leute haben behauptet es wäre wurscht was da nun für ne endung hinten dransteht...ds hat mich irritiert...ich dachte auch c++ impliziert c vollkommen</p>
<p>meine code wird trotzdem immer wieder unterbrochen...ich schaus mir heut abend noch mal an...es sollte ja ne insert funktion werden die nicht einfach so einfügt sondern einsortiert...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1863941</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1863941</guid><dc:creator><![CDATA[19matz91]]></dc:creator><pubDate>Wed, 03 Mar 2010 18:43:41 GMT</pubDate></item></channel></rss>