Dreizehnhundertsiebzehn

Die mir gebräuchliche Benutzung von ASCII-Sonderzeichen wird heute fortgesetzt.
Wenn ich etwas vergessen habe, dürft ihr gerne in den Kommentaren ergänzen.

: Doppelpunkt
In manchen Programmiersprachen wird der Doppelpunkt zu unterschiedliche syntaktischen Zwecken genutzt.

; Strichpunkt, Semicolon
Viele Programmiersprachen nutzen den Strichpunkt, um einzelne Befehle voneinander zu trennen.

< Kleiner, > Größer
Kleiner- und Größerzeichen werden verwendet, um Zahlenwerte miteinander zu vergleichen. In der Physik nutzt man sie auch für die Bra-Ket-Notation, in HTML und XML für Tags.

= Ist gleich
Das Gleichheitszeichen vergleicht Zahlenwerte. Manche Programmiersprachen nutzen es (auch) als Zuweisungsoperator.

? Fragezeichen
Das Fragezeichen ist Wildcard für ein einzelnes Zeichen. In Javascript etwa lassen sich damit einfache Abfragen formulieren.

@ Klammeraffe, At-Zeichen
Das At-Zeichen trennt bei Mail-Adressen den local Part vom Rechnernamen bzw. Domain. Es wird bisweilen auch zur Variablenadressierung genutzt. Bei Social Media spricht man damit gezielt einen bestimmten Nutzer an.

[] Eckige Klammern
Eckige Klammern werden beim Programmieren hauptsächlich für Arrays genutzt. In der Physik verwendet man sie für Kommutatoren, und in der Mathematik z.B. für die Gauss’sche Klammerfunktion.

\ Backslash, Rückschräger
Der Backslash dient als Pathdelimiter, bei manchen Programmiersprachen auch zur Modulo-Berechnung. Bei LaTeX wird er für die Syntax gebraucht.

^ Hochhax, Circumflex
Mit dem Hochzeichen lassen sich Potenzen schreiben, oder auch hochgestellte Indizes. Bei manchen Programmiersprachen wird es bei Pointeroperationen benutzt.

_ Underscore
Der Underscore kann in Identifiern benutzt werden, und dient dort oftmals zur Abtrennung einzelner Worte, bzw. ersetzt Blanks. Bei LaTeX leitet er Subindizes ein.

{} Geschweifte Klammern
In vielen Programmiersprachen dienen geschweifte Klammern als Markierungen für Anfang und Ende eines Blocks, in anderen umschließen sie einen Kommentar. In der Mathematik benutzt man sie um die Aufzählung einzelner Elemente einer Menge einzuschließen. In der Physik sind sie als Antikommutator verbreitet.

| Pipe
Den senkrechten Strich setzt man zum Pipen ein, oder um zwei Elemente zu verodern, manchmal auch als Separator.

~ Tilde
Die Tilde dient meist als Negation.

Werbeanzeigen

Über Anne Nühm (breakpoint)

Die Programmierschlampe.
Dieser Beitrag wurde unter Uncategorized abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

50 Antworten zu Dreizehnhundertsiebzehn

  1. claudius2016 schreibt:

    In c ist das Gleichheitszeichen eine beliebig hinterhältige Fehlerquelle, weil es nämlich nicht der Vergleichsoperator ist sondern eine Zuweisung. „if (A = B)“ liefert immer TRUE zurück und der Fehler ist sooo schwer zu finden. Habe ich schon oft suchen müssen… Genau wie „if (memcpy(a, b, sizeof(b))“ schwer zu finden ist…

    Liken

    • idgie13 schreibt:

      Das ist doch in fast allen Programmiersprachen so…
      Zum Glück warnen vernünftige IDEs heute 😉

      Liken

      • claudius2016 schreibt:

        sorry, ich bin Hostie, da gibt es ISPF und sonst gar nichts…
        Ein paar Kollegen entwickeln dezentral und schieben dann die Sourcen auf den Host, ist aber nicht sehr gebräuchlich. Jetzt könnte ich mich geoutet haben, c und Host sind nicht so üblich.

        Liken

    • Oh, ja, an das doppelte Gleichheitszeichen als Vergleichsoperator muss man sich erst gewöhnen, und selbst dann kann man es mal übersehen.
      Wenn man auf der LHS einen Funktionsaufruf o.ä. stehen hat, bringt der Compiler allerdings eine Fehlermeldung, dass er nichts zuweisen kann.

      C ist wenigstens typsicher. Bei Javascript oder PHP kann es außerdem passieren, dass man Äpfel mit Birnen vergleicht, weshalb man dort besser === nutzt.

      Liken

  2. claudius2016 schreibt:

    UPS: da fehlt ne Klammer „if (memcpy(a, b, sizeof(b)))“

    Gefällt 1 Person

  3. Pendolino70 schreibt:

    Wenn ich so etwas lese, bereue ich es immer, dass ich nichts davon kann. Vielleicht sollte ich mich doch mal an Programmieren für Dummies wagen.

    Liken

  4. Pendolino70 schreibt:

    Wenn ich schon mal unter Experten bin: Was ist ein sinnvoller Einstieg? Bestimmtes Buch, Programm etc.?

    Liken

    • claudius2016 schreibt:

      Also ich würde nicht mit c einsteigen, die Kurse/Bücher bringen immer zu 80% Tüdelkram und nur am Ende erwähnen sie ganz kurz kniffelige Strukturen oder Pointerverarbeitung. Das ist aber im Beruf das A&O…
      Privat würde ich wohl mit VBASIC oder Java starten…

      Gefällt 1 Person

    • Puh .. kontroverses Thema. Dazu hat wohl jeder Programmierer eine andere Meinung.

      Ich würde erst mal ganz bequem und ohne Kosten anfangen, ein wenig Javascript zu lernen.
      Dazu braucht es keine IDE oder sonst etwas zu installieren. Ein Texteditor genügt, und ausgeführt wird es – völlig unabhängig vom Betriebssystem – im Browser.
      Javascript ist von der Syntax dem verbreiteten C++ sehr ähnlich.

      Als Einstieg für Anfänger ist vielleicht https://wiki.selfhtml.org/wiki/JavaScript/ nicht schlecht (zumindest hhabe ich Javascript über SelfHTML gelernt, die Seite war aber damals noch ganz anders aufgebaut).

      Gefällt 2 Personen

    • claudius2016 schreibt:

      Im Grunde ist es gleichgültig, womit man anfängt. Es gibt ein paar Dinge in jeder Sprache: Schleifen, Bedingungen, Funktionsaufrufe… Das muß man einmal checken und dann auf neue Sprachen anpassen. Außer Assembler natürlich, da scheint auf den ersten Blick alles anders zu sein (ist es aber nicht).
      Vielleicht ist ein Kurs (vhs) sinnvoll, aber das ist natürlich total vom Dozenten abhängig.

      Gefällt 2 Personen

      • Plietsche Jung schreibt:

        Assembler ist die Kür und aus meiner Erfahrung eigentlich nur wichtig, wenn du sehr wenig Speicher hast oder Echtzeitsysteme abbilden musst.

        Liken

        • claudius2016 schreibt:

          Naja: es gibt Unternehmen, da ist Assembler der weit größte Anteil an Code-Menge. Es wurde „vergessen“ auf modernere Hochsprachen zu schwenken, oder es schien zu teuer. Nun rächt es sich, weil a) Hosties und b) Hosties mit Assembler-Kenntnissen rar (und teuer) werden… Nebenbei: seitdem ich beruflich auf dem Host unterwegs bin, steht er ständig zur Diskussion und solle alle paar Jahre abgelöst werden. Nur: die Ablöseprojekte verliefen bisher immer im Sande und es wird die nächste Generation z/OS eingeführt…

          Liken

          • Plietsche Jung schreibt:

            Oje, das klingt nicht gut, zumal Assembler immer seht nah an der Hardware ist.
            Die Assembler Kenntnisse sind eines, aber oft fehlt es schon an Dokumentation des Codes.

            Hast du schon mal versucht, dich in fremden ASS-Code einzulesen ? Zum Kotzen ist das.

            Da kann man den Unternehmen nur viel Glück wünschen.

            Liken

        • Assembler ist halt konkurrenzlos, wenn es um Performance geht.
          Da kommt keine Hochsprache mit ihrem ganzen Overhead mit.

          Liken

          • Plietsche Jung schreibt:

            Natürlich. Speed ist aber relativ. Wirklich wichtig, wird es in Echtzeitsystemen, wo zeitliche Reaktionen auf den Punkt kommen müssen.

            Liken

          • claudius2016 schreibt:

            Ja, kann sein, muss aber nicht.
            Ich kenne Kollegen, die durch ungeschickte Strategie auch Assembler langsam kriegen. Wenn z. B. eine Schnittstelle mit relativ großer Datenmenge täglich in eine Tabelle insertet wird, ohne Deltabildung, ohne Abgleich immer wieder insert bzw. update, dann wird auch so eine Anwendung gebremst. Sinnvoll wäre ein Load/Replace, wenn man schon kein Delta bilden möchte…

            Liken

          • Sci Fanboi schreibt:

            Da würde ich aber stark widersprechen wollen. Solange du auf modernen Prozessoren unterwegs bist, nehme ich jede Wette an, daß ein Standard C-Compiler effizienteren Code für die gegebene Architektur produziert, als 99% aller Assemblerprogrammierer!

            Siehe dazu auch die Vortragsfolien von fefe:
            https://blog.fefe.de/?ts=aa84a00b

            Liken

            • Naja, ich habe irgendwann mal Zeitmessungen gemacht. Da ging es allerdings um einen bestimmten Fall, in dem mit einem Speicherblock von einigen Megabyte irgendetwas bestimmtes gemacht werden sollte (weiß nicht mehr genau). Mit der Assembler-Routine ging es ruckzuck. Beim Vergleichscode gab es eine merkliche Verzögerung.

              Aber der Unterschied ist sicherlich vom Einzelfall abhängig. In vielen Fällen lohnt sich der Einsatz von Assembler wohl nicht.

              Liken

        • idgie13 schreibt:

          Assembler ist grausig. Brrrrrrrr.

          Gefällt 1 Person

    • idgie13 schreibt:

      Ich würd mit C# starten 🙂

      Liken

    • idgie13 schreibt:

      Am einfachsten finde ist es, was neues zu lernen, wenn man ein konkretes Projekt hat. Ich habe damals (lang ist es her – muss Mitte der 80er gewesen sein) unbedingt ein Strickmuster für einen Fraktalpulli generieren wollen und mir dazu notgedrungen, programmieren beigebracht. Das war bei mir damals Turbo Pascal.

      Im Prinzip war die Sprache aber egal – der Einstieg war gemacht und das Eis gebrochen. Über viele verschiedene Programmiersprachen bin ich inzwischen hauptsächlich mit C#, HTML, ASP.NET und Javascript unterwegs. Habe aber auch in C, C++, Java, Lisp, Visual Basic und anderen entwickelt. Im Prinzip sind alle mehr oder weniger ähnlich, mit verschiedener Syntax und Semantik.

      Gefällt 4 Personen

  5. Molly L. schreibt:

    Benütz bloß nie die Kleiner-Größer-Dinger hier in WP, die haben mir heir schon übelst Dinge weggeschnitten!

    Liken

  6. ednong schreibt:

    Assembler – hui, lang ists her …

    Liken

  7. Claudius2016 schreibt:

    Lustig, dass ein Gleichheitszeichen so eine Diskussion ausloest…

    Liken

  8. Leser schreibt:

    Ich hab jetzt nicht die ganzen Kommentare gelesen, hab aber noch was aus den Shells der nicht-Wintendo-Welt hinzuzufügen: Die Tilde steht als Abkürzung für das Home-Verzeichnis des Nutzers. Das größer-Zeichen > in einfacher oder doppelter Ausführung ist ebenfalls eine andere Form des Pipe, man fügt damit die Ausgabe eines Befehls in eine Datei ein (1x >) oder ans Ende der Datei, ohne den Rest der Daten darin zu überschreiben (2x >>). Letzteres ohne Gewähr, kann auch umgekehrt sein, so ein entweder/oder kann ich mir nicht merken, wenn ich es nur 1-2 mal im Jahr benutzen muss…

    Liken

    • Danke.
      Die Kommentare drehen sich hauptsächlich um den Einstieg beim Programmieren Lernen und um Assembler.

      Das mit der Tilde hatte ich irgendwann mal gewusst, aber längst wieder vergessen, da ich es normalerweise nicht brauche.

      Ja, stimmt. Mit Größer und Kleiner lassen sich Ein- und Ausgaben in einer Shell in oder aus einer Datei umleiten.

      Liken

  9. Pingback: Tweets trotz Grabesruhe //1517 | breakpoint

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.