-         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 12 von 12

Thema: keine vollständige Serial.print Ausgabe

  1. #11
    Erfahrener Benutzer Roboter-Spezialist Avatar von Moppi
    Registriert seit
    18.03.2018
    Beiträge
    487
    Anzeige

    Ich hatte geschrieben:

    Code:
    for(int i=0; i<10; I++){}
    Hier soll die Variable nur innerhalb der for-Schleife existieren und keine in einem übergeordneten Scope überschreiben.

    Wenn Du das anders haben möchtest, machst Du das so, wenn die Programmiersprache das zulässt. Das ist so gesehen ja kein Fehler. Ich halte es nur für ungünstig. Der Vorteil dabei ist, dass Programmteile (die oft auch Schleifen beinhalten) einfach mal von einem Codemodul in ein anderes kopiert werden können, ohne die Umgebung zu ändern - weil die Zählervariable nur lokal in der Schleife existent ist.

    Wenn die Programme immer größer werden und mehr und mehr Module zusammenkommen, ist es irgendwann einfacher lokale Variablen zu verwenden, dafür dann aber für bestimmte Zwecke immer mit dem selben Namen. Das vereinfacht die Fehlersuche, weil man sich dann auf einen bestimmten Bereich beschränken kann. Man hat immer in einem recht übersichtlichen Bereich die Variablen, die man für einen Programmabschnitt benötigt. Wenn die Projekte größer und größer werden, dann werden Variablen weiter und weiter verstreut (je nachdem, in welchem Scope die angesiedelt sind), die kann man dann teilweise wirklich suchen gehen, wenn mal was nicht hin haut, das macht es dann teils sehr viel aufwendiger.

    Wenn ich ein Problem mit einer Schleife habe, ist es meine Angewohnheit, erst mal dafür zu sorgen - zum Ausprobieren, dass dort wo es nicht funktioniert, klare Verhältnisse herrschen. Also wurde aus dem "for(i==0..." ein "for(int i=0...". Das war der Einfachheit halber, ich wollte mich so lange damit eigentlich nicht beschäftigen Und es gab natürlich den Grund, dass ich die Deklaration von "i" außerhalb der Schleife übersah.

    MFG
    Geändert von Moppi (01.12.2018 um 11:48 Uhr)

  2. #12
    Erfahrener Benutzer Robotik Einstein Avatar von HaWe
    Registriert seit
    09.10.2014
    Beiträge
    3.485
    ja, da gebe ich dir Recht.
    Ich hatte auch intuitiv vermutet, dass wenn ich 100x eine for-Schleife mit nur 1 einzigen übergeordneten Zählervariablen verwende, dann weniger Speicher bräuchte als wenn ich 100x for-Schleifen mit jeweils 1 eigenen internen for-Zähler hätte (also insgesamt 100 internen Zählern)
    - was aber durchaus ein Irrtum meinerseits gewesen sein wird.
    Der gpp Compiler ist offenbar schlauer als ich dachte...
    ·±≠≡≈³αγελΔΣΩ∞ Schachroboter:www.youtube.com/watch?v=Cv-yzuebC7E Rasenmäher-Robot:www.youtube.com/watch?v=z7mqnaU_9A8

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. CR nach Serial.print (" xx ");
    Von fredyxx im Forum Arduino -Plattform
    Antworten: 4
    Letzter Beitrag: 02.05.2016, 19:58
  2. Antworten: 16
    Letzter Beitrag: 20.02.2014, 18:15
  3. Print-Ausgabe
    Von DEAF BOY im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 12.12.2010, 21:43
  4. Print Ausgabe bei State Machine
    Von JuergenG im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 08.02.2010, 17:25
  5. Print Ausgabe über RS232 liefert nur Sonderzeichen
    Von Jörg9 im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 6
    Letzter Beitrag: 26.02.2007, 11:44

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •