-
        

Seite 1 von 7 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 68

Thema: C Progr.. warum Klammern

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.11.2007
    Ort
    Berlin
    Beiträge
    522

    C Progr.. warum Klammern

    Anzeige

    C Programmierung allgemein,

    mir leuchtet es absolut nicht ein,
    warum ich dauernd alles einklammern muss in C.
    Bei einer boolschen Abfrage zum Beispiel:
    if testflag
    {
    }

    muss ich
    if (testflag) schreiben.

    oder if (x==1)

    Was sollen denn da die Klammern. Das ändert weder mathematisch was, noch gäbe es irgendwelche anderen Interpretationen für den Compiler,
    bin ich zumindest der Meinung. In Pascal oder Modula brauche ich das auch nicht.
    Gibt für mich auch absolut keinen Sinn. Wie so vieles in C........

    Siro


  2. #2
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Beim IF (....) gehören die Klammern einfach zu Befehl. Das soll wohl an den Aufruf einer Funktion erinnern, auch die meisten Compiler das intern wohl anders behandeln werden.

    Die Geschweiften Klammern entsprechen ziemlich genau bei Pascal/Modula dem Begin und End. Die Klammern sind einfach nur schneller zu tippen. Wenn hinder dem If( ) nur ein Befehl kommt, kann man die { } auch weglassen.

    Die Syntax bei C ist auch nicht immer sinnvoll, daran kann man aber nicht viel ändern. Das sind oft Altlasten.

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.04.2010
    Beiträge
    1.249
    Wenn du sonst keine Sorgen hast...

    Gibt für mich auch absolut keinen Sinn. Wie so vieles in C........
    Nur weil man etwas nicht versteht, muss es nicht schlecht sein!

    Wenn ich so manches größere Programm in z.B. Bascom sehen, dann finde ich die C-Syntax sehr viel übersichtlicher!

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.09.2005
    Ort
    Osnabrücker Land
    Alter
    55
    Beiträge
    534
    ... das ist eine gute Frage, ich progge schon sehr lange in Zeh und hab mir darüber noch nie Gedanken gemacht, weil das eben die Syntax ist.

    Das ist so ne Art Frage wie, warum Endet ein Satz mit einem Punkt ?

    Denk mal drüber nach, vielleicht ist if ja (wie) eine Funktion und die Übergabeparameter gehören eben in Klammern. for(;;) ist da je genauso.

    C ist eben nicht dieses grauselige Basic. Dafür reichen dann auch {} statt Begin End IF - Murks ...

    und das schönste ist immer noch
    int hugo = peter < klaus ? 4 : 2;

    Viel Spaß noch,
    Vajk
    Ich kann mir keine Signatur leisten - bin selbständig!

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.551

    Re: C Progr.. warum Klammern

    Zitat Zitat von Siro
    ... In Pascal oder Modula brauche ich das auch nicht ...
    Und wo liegt jetzt die Begründung, dass man es deswegen in C nicht brauchen würdenkönntedürfteoderso

    Zitat Zitat von Siro
    ... dauernd alles einklammern muss in C ...
    Nach dem üblichen System der Syntaxregeln (die so der eine oder andere Compiler eingebaut hat) müsste ich jetzt sagen: es stimmt nicht. Du must nicht DAUERND einklammern - und schon garnicht alles. Beides wäre fehlerhaft . . . . so "denken" eben Compiler.

    Zitat Zitat von Siro
    ... noch gäbe es irgendwelche anderen Interpretationen für den Compiler ...
    Mal ne Frage: weißt Du soviel über Compiler, dass Du da ganz sicher bist? Vielleicht gar ein Compilerbauer? Also schon in den Anfängen logischer Propädeutik dürfte das geklärt worden sein (vermute ich). Oder andersrum - wolln wa uns mal jaans dumm ställn:

    Du gehst spazieren mit Max und Gerti oder Kurt und Emil
    Du gehst spazieren mit (Max und Gerti) oder (Kurt und Emil)
    Du gehst spazieren mit Max und (Gerti oder Kurt) und Emil
    Ciao sagt der JoeamBerg

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.09.2005
    Ort
    Osnabrücker Land
    Alter
    55
    Beiträge
    534
    obergeier: und gleich & oder und gleich &&
    und was ist in deiner Spazierwiese bevorrechtigt: und oder oder und oder oder und ?
    ... also ich würde am liebsten nur mit Gerti spazieren gehen
    Ich kann mir keine Signatur leisten - bin selbständig!

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801

    Re: C Progr.. warum Klammern

    Zitat Zitat von Siro
    mir leuchtet es absolut nicht ein,
    warum ich dauernd alles einklammern muss in C.
    Bei einer boolschen Abfrage zum Beispiel:
    if testflag
    {
    }

    muss ich
    if (testflag) schreiben.

    oder if (x==1)

    Was sollen denn da die Klammern. Das ändert weder mathematisch was, noch gäbe es irgendwelche anderen Interpretationen für den Compiler,
    bin ich zumindest der Meinung.
    So ist eben die C-Syntax. Wo ist das Problem? Es gibt Sprachen, die sind noch viel plüschiger, siehe Ada.

    Der Grund ist, daß eine solche Syntax leichter zu parsen ist.

    In Pascal oder Modula brauche ich das auch nicht.
    Gibt für mich auch absolut keinen Sinn. Wie so vieles in C........
    Na dann nimm doch Pascal oder Modula wenn dir C nicht gefällt. Gibt doch Sprachen genug. Schreibs eben in Python oder Forth oder Intercal.

    Oder nimm dir die GCC-Quellen und klöpple nen eigenen C-Dialekt nach deinem Gusto.

    Ich würde aber drauf wetten, daß die Zeit, die du für die Implementierung eines Sonderlocken-C-Dialekts brauchst, dafür ausreicht, mehr Klammern zu tippen, als du mit dem neuen Dialekt in deinem ganzen Leben sparen wirst
    Disclaimer: none. Sue me.

  8. #8
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Es ist zwar eine absolute Unart, aber wenn man unbedingt will, kann man sich Makros definieren, so dass man statt den Klammern {} auch BEGIN END schreiben kann. Sieht dann etwas nach MODULA aus, aber immer noch mit allen Nachteilen von C.

    Wenn dann die Taste fürs E abgenutzt ist kann man immer noch {} schreiben.

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    34
    Beiträge
    1.780
    Hmm, C hat zu viele Klammern?

    Dann probier doch mal Lisp
    So viele Treppen und so wenig Zeit!

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Zitat Zitat von Felix G
    Hmm, C hat zu viele Klammern?

    Dann probier doch mal Lisp
    hehe, der ist gut!
    Disclaimer: none. Sue me.

Seite 1 von 7 123 ... LetzteLetzte

Berechtigungen

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