- Labornetzteil AliExpress         
Seite 2 von 7 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 68

Thema: C Progr.. warum Klammern

  1. #11
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    25.03.2006
    Ort
    Darmstadt
    Alter
    33
    Beiträge
    522

    Re: C Progr.. warum Klammern

    Anzeige

    Praxistest und DIY Projekte
    Zitat Zitat von Siro
    .. zum Beispiel:
    if testflag
    {
    }
    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 ...
    Doch gibt es. Beispiel
    Code:
    if (a) 
    	+b;
    Wenn man jetzt die Klammern um a weg lässt, ist es alles andere als eindeutig, ob nun a die Bedingung und +b; das auszuführende Statement ist oder ob a +b die Bedingung ist und ; das Statement. Klar kommt sowas ziemlich selten vor, ist aber immer noch syntaktisch völlig korrekter Code.

    MfG Mark

  2. #12
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    So ist eben die C-Syntax. Wo ist das Problem?
    Code:
    #define testflag (x==1)
    
    if testflag
    	while testflag
    		x=0;
    Jeder kann sich sein eigenes C schaffen ;)

    http://www.parallelnetz.de/CHater.html
    (Hab' ich das hier aufgesammelt?)

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  3. #13
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.09.2005
    Ort
    Osnabrücker Land
    Alter
    62
    Beiträge
    534
    ... Deine Codesample wird bestimmt in einem ISR aufregufen und X ist volatile ?
    ... man man man ich klink mich aus.
    Ich kann mir keine Signatur leisten - bin selbständig!

  4. #14
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Hinter der C-Syntax steckt Absicht, wie man inzwischen weiss:
    ...und entwickelten daraufhin B, BCPL und schließlich C. Wir hörten auf, als es uns gelang, den Ausdruck

    C/C++ Code:
    for(;P("\n"),R--;P("|"))for(e=C;e--;P("_"+(*u++/8 )%2))P("| "+(*u/4)%2);

    fehlerfrei zu compilieren.

    Zu denken, daß moderne Programmierer versuchen würden, eine Sprache zu benutzen, die derartige Ausdrücke zuläßt, lag weit außerhalb unseres Verständnisses. Wir dachten daran, das ganze an die Sowjets zu verkaufen, um den Fortschritt ihrer Computerwissenschaft um 20 Jahre zurück zu werfen
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  5. #15
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.04.2010
    Beiträge
    1.249
    Zitat Zitat von vajk
    ... Deine Codesample wird bestimmt in einem ISR aufregufen und X ist volatile ?
    ... man man man ich klink mich aus.
    Warum?! Schau dir an was #define macht und fertig.
    Erstmal versuchen es zu verstehen, dann jammern...

  6. #16
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    for(;P("\n"),R--;P("|"))for(e=C;e--;P("_"+(*u++/8 )%2))P("| "+(*u/4)%2);
    http://www.google.de/search?q=for%28...4%29%252%29%3B

    324 Millionen Fundstellen!?!

    *lol*
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  7. #17
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.04.2010
    Beiträge
    1.249
    Und was gibt es an der Code Zeile worüber man sich aufregen sollte?

  8. #18
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Da ist ja das Schlimme: Kein C-Programmierer findet diese Zeile irgendwie aussergewöhnlich

    Kann man daraus Rückschlusse auf die Denkweise ziehen ?
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  9. #19
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Da ist nichts, worüber man sich aufregen sollte. Die Codezeile ist lediglich ein Beispiel dafür, was man in C formulieren können sollte. Dass C das Allheilmittel ist glaube ich auch nicht.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  10. #20
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    11.04.2005
    Beiträge
    1.469
    Schade nur, daß die Klammern auf den deutschen Tastaturen nicht direkt nebeneinander lliegen und man nur per ALT GR drankommt.
    Ich hätte ja gedacht, daß man beim definieren des Tastenlayouts die C Programmierer berücksichtigt und diese Tasten extra gut erreichbar macht.
    Aber das war wohl kein Kriterium.
    Vielleicht sollte man sich als C-Anfänger einfach eine amerikanische Tastatur zulegen, dann verknotet man sich nur das Gehirn, und nicht auch noch die Finger

    Gruß
    Christopher

Seite 2 von 7 ErsteErste 1234 ... LetzteLetzte

Berechtigungen

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

12V Akku bauen