<?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[Linker Error, Funktion mit Pointer auf Funktion, stehe auf dem Schlauch.]]></title><description><![CDATA[<p>Hallo,<br />
leider ist mein erster Post gleich ein kleiner Hilferuf, ich habe mir eine Mischung aus C/C++ selbst beigebracht aber irgendwann läuft man so gegen eine Wand...</p>
<p>Ich schreibe ein kleines Programm zur Sortierung von Zahlen.<br />
Je nachdem, wie sortiert werden soll, wird an die Funktion &quot;sort&quot; eine andere Funktion übergeben. Und genau da habe ich irgendwo einen Fehler.</p>
<p>&quot;Linker Error - undefined reference to sort(int (*)(int,int),int,int)&quot;</p>
<pre><code>void sort (int (*func)(int ,int), int *daten, int anzahl)
{
        int i,j,ablage;
        for (i=0; i&lt;anzahl; i++)
        for (j=0; j&lt;anzahl ; j++)
        {
            if (func(daten[i],daten[j]) == 0)
            {  
            ablage = daten[i];
            daten[i] = daten[j];
            daten[j] = ablage;
            } 
        }
}
</code></pre>
<p>Zum Beispiel wird diese Funktion übergeben:</p>
<pre><code>int aufsteigend (const int a,const int b)
{
    if (a&gt;b)
    return 1;
    else return 0;
}
</code></pre>
<p>Die Funktion wird vorher so zugeordnet und aufgerufen:</p>
<pre><code>int (*f) (int,int);
f = aufsteigend;
int a;
cin &lt;&lt; a;
int* x; 
x = new int [a];
// rand()%100 auf x...
sort(f,*x,a);
</code></pre>
<p>Hier wäre der ganze Code:<br />
<a href="http://docs.google.com/Doc?docid=0Af4O4t58Vu47ZGd6aHA2dHdfMGhuN2twcWR2&amp;hl=en" rel="nofollow">http://docs.google.com/Doc?docid=0Af4O4t58Vu47ZGd6aHA2dHdfMGhuN2twcWR2&amp;hl=en</a></p>
<p>Würde mich freuen wenn mir jemand helfen könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/263488/linker-error-funktion-mit-pointer-auf-funktion-stehe-auf-dem-schlauch</link><generator>RSS for Node</generator><lastBuildDate>Sat, 05 Sep 2026 19:27:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/263488.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 21 Mar 2010 19:29:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Linker Error, Funktion mit Pointer auf Funktion, stehe auf dem Schlauch. on Sun, 21 Mar 2010 19:33:02 GMT]]></title><description><![CDATA[<p>Hallo,<br />
leider ist mein erster Post gleich ein kleiner Hilferuf, ich habe mir eine Mischung aus C/C++ selbst beigebracht aber irgendwann läuft man so gegen eine Wand...</p>
<p>Ich schreibe ein kleines Programm zur Sortierung von Zahlen.<br />
Je nachdem, wie sortiert werden soll, wird an die Funktion &quot;sort&quot; eine andere Funktion übergeben. Und genau da habe ich irgendwo einen Fehler.</p>
<p>&quot;Linker Error - undefined reference to sort(int (*)(int,int),int,int)&quot;</p>
<pre><code>void sort (int (*func)(int ,int), int *daten, int anzahl)
{
        int i,j,ablage;
        for (i=0; i&lt;anzahl; i++)
        for (j=0; j&lt;anzahl ; j++)
        {
            if (func(daten[i],daten[j]) == 0)
            {  
            ablage = daten[i];
            daten[i] = daten[j];
            daten[j] = ablage;
            } 
        }
}
</code></pre>
<p>Zum Beispiel wird diese Funktion übergeben:</p>
<pre><code>int aufsteigend (const int a,const int b)
{
    if (a&gt;b)
    return 1;
    else return 0;
}
</code></pre>
<p>Die Funktion wird vorher so zugeordnet und aufgerufen:</p>
<pre><code>int (*f) (int,int);
f = aufsteigend;
int a;
cin &lt;&lt; a;
int* x; 
x = new int [a];
// rand()%100 auf x...
sort(f,*x,a);
</code></pre>
<p>Hier wäre der ganze Code:<br />
<a href="http://docs.google.com/Doc?docid=0Af4O4t58Vu47ZGd6aHA2dHdfMGhuN2twcWR2&amp;hl=en" rel="nofollow">http://docs.google.com/Doc?docid=0Af4O4t58Vu47ZGd6aHA2dHdfMGhuN2twcWR2&amp;hl=en</a></p>
<p>Würde mich freuen wenn mir jemand helfen könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872198</guid><dc:creator><![CDATA[dak]]></dc:creator><pubDate>Sun, 21 Mar 2010 19:33:02 GMT</pubDate></item><item><title><![CDATA[Reply to Linker Error, Funktion mit Pointer auf Funktion, stehe auf dem Schlauch. on Sun, 21 Mar 2010 19:44:34 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">void sort (int (*func)(int ,int), int *daten, int anzahl)
</code></pre>
<pre><code class="language-cpp">sort(f,*x,a);
</code></pre>
<pre><code>Linker Error - undefined reference to sort(int (*)(int,int),int,int)
</code></pre>
<p>Fällt dir da nichts auf? Was bedeutet wohl das * vor dem x?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872202</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 21 Mar 2010 19:44:34 GMT</pubDate></item><item><title><![CDATA[Reply to Linker Error, Funktion mit Pointer auf Funktion, stehe auf dem Schlauch. on Sun, 21 Mar 2010 19:52:47 GMT]]></title><description><![CDATA[<p>EDIT:</p>
<p>Zu Spät:D:D</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872206</guid><dc:creator><![CDATA[fr33g]]></dc:creator><pubDate>Sun, 21 Mar 2010 19:52:47 GMT</pubDate></item><item><title><![CDATA[Reply to Linker Error, Funktion mit Pointer auf Funktion, stehe auf dem Schlauch. on Sun, 21 Mar 2010 20:04:35 GMT]]></title><description><![CDATA[<p>oh mann... danke <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="😉"
    /><br />
funktion falsch definiert</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872210</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872210</guid><dc:creator><![CDATA[dak]]></dc:creator><pubDate>Sun, 21 Mar 2010 20:04:35 GMT</pubDate></item><item><title><![CDATA[Reply to Linker Error, Funktion mit Pointer auf Funktion, stehe auf dem Schlauch. on Sun, 21 Mar 2010 20:16:26 GMT]]></title><description><![CDATA[<p>dak schrieb:</p>
<blockquote>
<p>oh mann... danke <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="😉"
    /><br />
funktion falsch definiert</p>
</blockquote>
<p>Die Funktionsdefinition macht schon Sinn. Nur den Aufruf solltest du nochmal überdenken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872218</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872218</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 21 Mar 2010 20:16:26 GMT</pubDate></item><item><title><![CDATA[Reply to Linker Error, Funktion mit Pointer auf Funktion, stehe auf dem Schlauch. on Sun, 21 Mar 2010 21:02:46 GMT]]></title><description><![CDATA[<p>Ja klar läuft schon, hab das nur zum testen so (<em>x) geschrieben.<br />
Nur leider hatte ich die Funktion so definiert:<br />
void sort (int (</em>)(int ,int), int, int)<br />
und so deklariert:<br />
void sort (int (*f)(int ,int), int *****daten, int anzahl)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1872232</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1872232</guid><dc:creator><![CDATA[dak]]></dc:creator><pubDate>Sun, 21 Mar 2010 21:02:46 GMT</pubDate></item></channel></rss>