Rückgabe eines Zeigers auf eine automatische Variable

Angenommen, Sie haben die folgende Funktion:

char *getp()
{
    char s[] = "hello";
    return s;
}

Verursacht die Funktion einen Speicherverlust, da sie einen Zeiger auf eine lokale Variable in der Funktion zurückgibt, die außerhalb verwendet werden soll?

P.S. Ich lerne immer noch C, daher ist meine Frage vielleicht ein bisschen naiv ...

[Aktualisieren]
Also, wenn du sagst, dass du ein neues zurückgeben möchtestchar[] Array (dh vielleicht für eine Teilzeichenfolge-Funktion), was genau geben Sie zurück? Sollte es Zeiger auf eine externe Variable sein? dh achar[] ist das nicht lokal für die funktion?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage