Aber, wo wir schon dabei sind: Die Anzahl an ArrayElementen kann ich ja ermitteln. Aber wie kann ich die Größe in Byte herausfinden?
Ja, DU kannst das! Aber Siemens hat anscheinend Schwierigkeiten damit.
Habe gestern mal in der von Harald verlinkten 127.795 KB pdf gestöbert.

Da kräuseln sich mir die NackenHaare.
1.) Zeile 4 ist identisch mit Zeile 3.
Da werden also nur die unteren Array-Grenzen von Vektor1 und Vektor2 und die obere Grenze nur von Vektor 1 - dafür aber doppeltgemoppelt - abgefragt.
Nun gut, ein TippFehler bzw. ein erfolgreich-"gecopied"-und-"gepasted"-aber-dann-nicht-zuende-bearbeitet-Fehler. Schwamm drüber.
2.) Wenn der Sinn der Mimik ist, zu prüfen, ob die
Anzahl der "Koordinaten" der beiden Vektoren gleich ist, warum prüft man das denn dann nicht?
Warum prüft man stattdessen nur den Sonderfall, dass die Nummern der AnfangsKoordinaten und auch die Nummern der End-Koordinaten beider Vektoren gleich sind?
Wenn wirklich nur die Anzahl der Koordinaten gleich sein muss, warum programmiert man die Mulitiplikations- und SummenBildungsSchleife dann nicht gleich richtig, statt sie auf den Sonderfall zu beschränken?
3.) Warum wird als Kennzeichen dafür, dass die Vektoren nicht zueinander passen, der Wert -1 als Ergebnis geliefert? Das wäre einfach und sinnvoll, wenn die "richtigen" Ergebnisse nur positiv sein könnten. Aber das sehe ich in dem gegebenen Beispiel nicht als gegeben.
Hmm, wie haben wir früher nur sowas programmiert, als UPPER_BOUND/LOWER_BOUND noch gar nicht erfunden waren...
Wir waren früher nicht so verwöhnt.

Erfunden sind UPPER_BOUND und LOWER_BOUND schon länger. Siemens hat sie recht spät erst in einer stark eingeschränkten Version neu erfunden, statt sie einfach zu übernehmen, nämlich für alle Arrays anwendbar.
Wie genau soll ich dem Programm denn mitgeben, was ich "sehe"? Sofern ich dafür irgendwas an Code zurechtschreiben muss ...
Du könntest, wie schon mehrfach beschrieben, an zentraler Stelle Deines Programms, die/den Parameter ändern, auf die/den Dein darauf ausgelegter ProgrammCode an zig Stellen zugreifen kann.
... hab ich doch nur wieder eine redundante Lösung zur eh schon vorhandenen Funktion LOWER_BOUND und UPPER_BOUND.
"Eh schon vorhanden" ist ja noch nicht gegeben, darum hast Du ja hier Deinen Wunsch geäussert.
Ich habe keine Ahnung, wie und wo Siemens die Dimensionierung der Arrays hinterlegt. Dass diese Informationen nach dem Compilieren in der Steuerung zur Laufzeit des Programms nicht mehr vorhanden sind, sondern erst mühsam/aufwändig rekonstruiert werden müssten, mag ich nicht wirklich annehmen/glauben.
Was spräche also dagegen die beiden Funktionen auf alle Arrays anwenden zu lassen? Aus meiner Sicht nichts.
Selbst wenn man die Anwendung auf nicht-A(*)-Arrays für unnötig oder "unnötig verführerisch" halten sollte.
Absolut unnötig finde ich aber, diesen Weg - aus welchen Gründen auch immer - zu verbieten, wenn dadurch nur eine (weitere) Ausnahme einer Regel künstlich und unnötig erzeugt wird. Die ProgrammierSprache wird dadurch nur unnötig komplex und schwerer zu erlernen.
Der "Drang" lässt zum Glück mit dem Alter nach

Wenn man mal n bissl was erlebt hat, regt man sich über solche Kleinigkeiten icht mehr auf, sondern machst einfach so, dass es funktioniert und gut
Oh Du Glücklicher, oh Du Seelicher!

Mich regt es durchaus auf, wenn ich beobachte, wie sich solche Kleinigkeiten im Laufe der Zeit wider besseren Wissens zu Grossigkeiten weiterentwickeln, statt einfach ausgeräumt zu werden.
Ich beneide niemanden, der in der heutigen Zeit das Programmieren lernen muss oder will. Die Bäume und das Gestrüpp, die einem den Blick auf den Wald versperren, haben ja sowas von zugenommen, dass kaum noch ein "schonender" Einstieg möglich zu sein scheint.