Betrachten Sie folgende Deklaration:
%Vor%Wäre es legal, es so zu behandeln, wie es erklärt wurde:
%Vor%oder sogar:
%Vor%in C ohne seine Regeln (schlecht) zu brechen?
Ich habe festgestellt, dass es ohne jegliche Besetzung möglich ist:
%Vor% Beachten Sie, dass wir a
nicht direkt auf p1
-Zeiger zuweisen können. Der Compiler beschwert sich jedoch nicht, wenn p2
mit ptr_temp
zugewiesen ist, auch wenn er potentiell gefährlich ist (dafür ist kein Cast erforderlich). Ist es wirklich gesäubert? Wenn ja, warum verbietet es dann die erste Zuweisung?
Das Verhalten, das Sie sehen, liegt an der Art und Weise, wie mehrdimensionale Arrays in C behandelt werden.
Sehen Sie sich diese Frage Zeigeradresse in einem mehrdimensionalen C-Array an