|
|
Variablenstruktur während dem Programmieren anzeigen |
|
einfachrolf |
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 03.10.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.10.2014, 14:26
Titel: Variablenstruktur während dem Programmieren anzeigen
|
|
Ich speichere meine Variablen alle in dem Struct-Array handles.
Jedoch verliere ich oft den Überblick über die Struktur meiner Variablen. Um diese einzusehen, muss ich das Programm starten und während dem Debugging irgendwo mit einem Breakpoint unterbrechen. Das ist teilweise sehr lästig.
Ist es möglich, mir während der Programmierung (am besten ohne Unterbrechung des Programms durch Breakpoints beim Debuggen) die Struktur der Variablen anzuzeigen?
Idealerweise würde ich gerne den Namen meiner Struct-Variablen eintippen im Script und sofort angezeigt bekommen, welche Variablen in dieser enthalten sind.
Zuletzt bearbeitet von einfachrolf am 03.10.2014, 15:04, insgesamt 2-mal bearbeitet
|
|
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 03.10.2014, 14:36
Titel:
|
|
Wird ein Ausdruck oder Aufruf einer Variablen nicht mit einem Semikolon abgeschlossen, wird sie an der Stelle im Code dann auch im Command window ausgegeben.
Der Sinn deiner Vorgehensweise ergibt sich mir aber noch nicht. Warum muss das Programm unbedingt weiterlaufen, anstatt es z.B. mit dem Debugger und breakpoints an einer gewünschten Stelle anzuhalten?
|
|
|
einfachrolf |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 03.10.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.10.2014, 15:07
Titel:
|
|
@DSP:
ich meine natürlich, dass ich es lästig finde das Programm ständig während dem Debugging mit Breakpoints zu unterbrechen. ( Für mich ist das ein Unterbrechen des Programmes während der Laufzeit. Wie siehst du das? ).
Ich habe es aber in meiner Frage zum besseren Verständnis angepasst.
Deine Lösung hilft mir nicht wirklich, da meine Variablen nur beim Unterbrechen (Im Debug) existieren.
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 03.10.2014, 15:17
Titel:
|
|
einfachrolf hat Folgendes geschrieben: |
Deine Lösung hilft mir nicht wirklich, da meine Variablen nur beim Unterbrechen (Im Debug) existieren. |
Das bezweifel ich doch ganz stark. Eine Variable existiert innerhalb ihrer Funktion oder wenn du sie "global" im GUI handles abspeicherst zur kompletten Laufzeit nach der Variablen-Initialiserung bzw. Wertzuweisung, egal ob du nun den Debugger benutzt oder nicht.
Schreibe ich irgendwo im code z.B. einfach nur handles wird auf jedenfall der handles struct der GUI in seinem momentanen "Zustand" im Command window ausgegeben, sprich alle Felder und deren Wert/Datentyp und Dimensionen bei Array.
Ansonsten mal bitte genauer beschreiben wie du dir die Ausgabe vorstellst.
|
|
|
Alex4456 |
Forum-Anfänger
|
|
Beiträge: 47
|
|
|
|
Anmeldedatum: 17.09.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.10.2014, 15:48
Titel:
|
|
Also so wie ich es verstehe
hat er halt im code iwie stehen strukt.var1, strukt.var2 usw., nur überall im Code verteilt. Und da er sich jetzt nicht 30 variablen Namen merken kann würde er gerne z.b. im Editor mit der Maus über strukt. gehen und dann alle möglichen var-Namen sehen.
Ansonsten kann man das ja nur machen indem man das Skript starten (bei GUI dann in funktionen stoppen) und dann kann man sich die Variablen im Workspace angucken.
Habe leider nur keine Antwort auf deine Frage, würde mich selber total interessieren.
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 03.10.2014, 17:48
Titel: Re: Variablenstruktur während dem Programmieren anzeigen
|
|
|
|
|
Hallo einfachrolf,
Zitat: |
Ist es möglich, mir während der Programmierung (am besten ohne Unterbrechung des Programms durch Breakpoints beim Debuggen) die Struktur der Variablen anzuzeigen? |
Das ist schon aus theoretischen Gründen nicht möglich. Beispiel:
Jetzt ist es unmöglich den Editor automagisch raten zu lassen, welche Felder S hat. Das hängt einfach vom Programm-Ablauf ab. Gut, Du könntest natürlich versprechen, dass Du solche Tricks nicht machst, sondern stattdessen nur bestimmte Felder definierst. Aber dann ist das Problem ja auch schon erledigt!
Bei größeren Programmen, z.B. mit 100'000 Zeilen, ist genau das ein ernstes Problem. Dann benötigt man eine Strategie zum sauberen Programmieren um solche Probleme zu verhindern. So könnte man z.B. objekt-orientierte Programmierung benutzen oder die Felder eines Struct nur in einer bestimmten Funktion erzeugen lassen, so dass man sicher sein kann, dass nicht irgendwo im Programm irgendetwas erzeugt wird.
Gruß, Jan
Zuletzt bearbeitet von Jan S am 09.10.2014, 13:52, insgesamt einmal bearbeitet
|
|
|
einfachrolf |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 03.10.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 03.10.2014, 19:21
Titel: Vielen Dank
|
|
Vielen Dank für eure Unterstützung. Ich schätze, dass sich das leider nicht so wie erwünscht realisieren lässt.
Ist es denn allgemein möglich Variablen in Matlab autovollständigen zu lassen.?
Beispiel
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 03.10.2014, 21:57
Titel:
|
|
Hallo,
damit das klappt, müssen die Variablen momentan im Workspace existieren.
Wenn du also bestimmte Variablen vervollständigen willst, dann lege sie im (Base) Workspace an, und du kannst sie im Editor auch verwenden.
Grüße,
Harald
|
|
|
einfachrolf |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 11
|
|
|
|
Anmeldedatum: 03.10.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 05.10.2014, 13:27
Titel:
|
|
Harald hat Folgendes geschrieben: |
Hallo,
damit das klappt, müssen die Variablen momentan im Workspace existieren.
Wenn du also bestimmte Variablen vervollständigen willst, dann lege sie im (Base) Workspace an, und du kannst sie im Editor auch verwenden.
Grüße,
Harald |
Ich führe folgendes Script aus.
nach deiner Aussage müsste mir doch nun nach der Eingabe von " matrizen. " im Editor der Inhalt angezeigt werden.
Irgendwie passiert das aber nicht. Liegt das an meinen Matlab Einstellungen?
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 05.10.2014, 13:56
Titel:
|
|
Meinst du mit Editor das Command Window?
Dort werden bei einem Vektor bzw. Matrix innerhalb eines struct bei dessen Aufruf nur die Felder, Matrixdim. und Datentyp angezeigt. Willst du Werte selbst sehen, musst du schon das jeweilige Feld direkt ansprechen. Nur bei Skalaren innerhalb des structs wird dir der Wert beim Aufruf des structs angezeigt.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|