Line 36, you pass the uninitialized pointer to such_platz(), but that doesn't matter because you assign ort a value at line 48.
Line 37: platz_id is still uninitialized. You passed it by value to such_platz(), so the caller's value is not updated. If you expect such_platz to update the caller's value, then pass it by reference.
Changing line 32 as shown won't make any difference since you're passing it by value to such_platz(). If I understand what you want to do correctly,you want to pass the iterator by reference.
1 2 3 4 5
p_it platz_id; // This remains as it is.
...
int such_platz (string, p_it & iter); // pass iterator by reference
...
int such_platz(string ein, p_it & ort) // pass iterator by reference
Now, when you update ort in such_platz(),you're updating platz_id in the caller.