Betrachten Sie diesen Code:
char* foo(int myNum) {
char* StrArray[5] = {"TEST","ABC","XYZ","AA","BB"};
return StrArray[4];
}
Wenn ich zurückkehre StrArray[4]
an den Aufrufer, soll das funktionieren? Da das Array auf dem Stack definiert ist, ist dieser Teil des Speichers aus dem Bereich herausgefallen, wenn der Aufrufer den Zeiger erhält. Oder wird dieser Code funktionieren?