undefinied reference to winmain@16
-
also einfach ein int main vor die schleife oder wie ? sorry jungs bin noch ein absoluter nobb in diesem gebiet.
-
Bei einem Programm brauchst du immer die eine main()-Funktion. Da ist der Einstiegspunkt ins Programm. Wie schon gesagt, woher soll sonst der Compiler wissen, wo er anfangen soll? In dieser main() kannst du dann andere Funktionen aufrufen (z. B. quicksort() in deinem Fall).
Du wirst übrigens Fehlermeldungen bekommen, da du die Funktion quicksort() zweimal definierst. Da brauchst du unterschiedliche Namen, ansonsten wirst du auf C++ und Klassen ausweichen müssen.
Was ist eigentlich template <class C> ? (gehört wohl auch eher zu C++ ;))
-
ich bekomms einfach nicht gebacken nun habe ich eine main funktion gesetzt und er knallt immernoch fehlermeldungen wie noch und nöcher
-
Vllt. weil du eine win32 Anwendung erstellt hast, statt einer Konsolenanwendung,
solch einen Fehler habe ich in diesem Zusammenhang in Erinnerung.
-
Ok, wie kann ich es also in eine konsolenanwendung herstellen, wa sich brauche ist einfach ein quicksort der mir die zahlen die ich eingebe schön sortiert. der ungefähr so ablaufen soll sitze jetzt schon seit 1 woche dran und bin einfah am verzweifeln:
#include <stdio.h> #include <stdlib.h> #include <string.h> // ********* Equates ********** #define FOREVER 1 #define TRUE 1 #define FALSE 0 #define LCOUNT 20 /******** globals ********/ int Recursion=0; int num; //Anzahl zu sortierender Elemente int pivot; //Index Pivot Element #include "info1h1_a.c" /*********** in dieser include Datei stehen: - die Unterprogramme Ihrer Lösung, - globale Variablen - zusätzliche #defines - ggfs. weitere #include's **************/ int main(int argc,char **argv) { int i; int sortiermich[LCOUNT]; num = argc - 1; if (num < LCOUNT) { for( i=0; i < num; i++ ) sortiermich[i] = atoi(argv[i+1]); QuickSort( sortiermich,0,num-1); //sortiere und gibt bei jeder Vertauschung die vertauschten Elemete und das Pivotelement aus. return 0; } else { printf("Zuviele Parameter (%d statt %d)\n",num,LCOUNT); return 1; } }
-
Am einfachen wärs, wenn du uns mal die Fehlermeldungen und den Code bzw. die Codestellen posten könntest.
-
Wiegesagt wir sollen ein quicksort machen, der 1. quelltext was ich und ein freudd hinbekommen haben unten der zweite ist die aufgabenstellung zu dem quicksortp Programm. Ich bin echt am verzweifeln wiegesagt am Anfang kam immer nur die Fehlermeldung (siehe Topicüberschrift). Habe wie vorgeschlagen dann ein main vor die schleife gesetzt und jetzt habe ich richitg viele fehlermeldungen wie zb:11 G:\Downloads\Sonstiges\quicksortelfin.cpp
quicksort' was not declared in ; **-15 G:\\Downloads\\Sonstiges\\quicksortelfin.cpp** **ISO C++ forbids declaration of
[b];15 G:\Downloads\Sonstiges\quicksortelfin.cppsyntax error beforeint'[/b] **[b]18 G:\\Downloads\\Sonstiges\\quicksortelfin.cpp ISO C++ forbids declaration of
q
18 G:\Downloads\Sonstiges\quicksortelfin.cpp
r' was not declared in this 19 G:\\Downloads\\Sonstiges\\quicksortelfin.cpp
l' was not declared in this
19 G:\Downloads\Sonstiges\quicksortelfin.cpp
r' was not declared in this 21 G:\\Downloads\\Sonstiges\\quicksortelfin.cpp parse error before
while'
24 G:\Downloads\Sonstiges\quicksortelfin.cpp
ISO C++ forbids declaration ofj 24 G:\\Downloads\\Sonstiges\\quicksortelfin.cpp redefinition of
int j'
19 G:\Downloads\Sonstiges\quicksortelfin.cpp
int j' previously defined here 24 G:\\Downloads\\Sonstiges\\quicksortelfin.cpp parse error before
while'[/b]MfG
Rainer 2k
-
Ups sorry sehe gerade das das c++, kann ich das auch in c machen.
Das programm solte aussehen ich gebe zahlen ein : 50 10 6 3
Un das Prog soll mir die sortieren habe vorher noch nie quicksort gemacht deswegen sind wir hier am ausrasten und probieren alles was wir von und c++ wissen.danke im voraus
rainer 2k
-
Also wenn du den quicksort auslagern möchtest in einer anderen Datei, dann mach das am besten so:
quicksort.h
#ifndef QUICKSORT_H #define QUICKSORT_H int quicksort(...); //anstatt ... hald die Parameter, die du brauchst #endif
quicksort.c
int quicksort(...) //wie in Headerdatei { ... //hier die Funktion ausprogrammieren }
programm.c
#include <stdio.h> #include <stdlib.h> ... #include "quicksort.h" //sollte im gleichen Verzeichnis sein, ansonsten Pfad angeben! int main(void) { ... quicksort(...); //Aufruf deiner Funktion quicksort ... }
Die quicksort.c musst du dann natürlich noch deinen Projektdateien hinzufügen, damit das auch compiliert und gelinkt wird.
-
ok, ich danke dir werde das morgen mal probieren und dann statusmeldung abgeben
MfG
Rainer2k