Zitat:
Wenn ich aber innerhalb der Funktion NewBrand 'brand' ausgebe, wird es korrekt ausgegeben, wenn ich aber 'brand' an main zurückgebe, und dann in main die entsprechende Var. ausgebe, sehe ich nur Sonderzeichen.
|
Das liegt daran, dass du einen zeiger auf eine stack-variable zurückgibts. Darf man nicht machen, da dieser anch dem Verlassen der Fu. nicht mehr gültig ist.
Korrekte Vorgangsweise: Speicher am Heap allokieren oder Speicher für string in der main funktion vereinbaren + zeiger auf diesen der Fu. übergeben.
fg
-hannes