OK, danke für die Antworten.
Also das Allokieren hätte ich mir sparen können, das muss anscheinend nicht sein(lt. Compiler).
Wenn man static weglässt, so beschwert sich der Compiler auch nicht. Aber ich schätze mal, dass das static schon wichtig ist!?
Die Fehlermeldungen sind verschwunden, als ich die direkte Zuweisung gegen ein strcpy ausgtauscht habe. Aha, interessant...da ist man ja doch etwas verwöhnt von C++. Wieso hats denn mit direkter Zuweisung trotzdem funktioniert?
Gibts irgendwo eine Seite wo kurz die Eigenarten von C gegenüber C++ erklärt werden? Oder gibts außer bei den Strings eh nicht viel Unterschiede?(die Objektorientierung, Streams etc... jetzt mal weggelassen?)
Viele Grüße,
Harri
PHP-Code:
char* stab(double hm)
{
static char* erg;
erg=(char*)malloc(15);
strcpy(erg,"Fehler");
if(hm>0)
strcpy(erg,"stabil");
else if(hm==0)
strcpy(erg,"indifferent");
else if(hm<0)
strcpy(erg,"labil");
return erg;
}
EDIT: Hab das malloc jetzt wieder weggetan, weil ich dann auch irgendwann free() ausführen müsste, und ich wüsste echt nicht wo ich das tun soll! Im _main() gibts die Variable nicht, und free() vor dem return ausführen wäre auch ein bisschen extrem sinnlos!