So ist eben die C-Syntax. Wo ist das Problem?Jeder kann sich sein eigenes C schaffen ;)Code:#define testflag (x==1) if testflag while testflag x=0;
http://www.parallelnetz.de/CHater.html
(Hab' ich das hier aufgesammelt?)
Gruß
mic
Doch gibt es. BeispielZitat von Siro
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.Code:if (a) +b;
MfG Mark
So ist eben die C-Syntax. Wo ist das Problem?Jeder kann sich sein eigenes C schaffen ;)Code:#define testflag (x==1) if testflag while testflag x=0;
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!
... 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!
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.
Warum?! Schau dir an was #define macht und fertig.Zitat von vajk
Erstmal versuchen es zu verstehen, dann jammern...
http://www.google.de/search?q=for%28...4%29%252%29%3Bfor(;P("\n"),R--;P("|"))for(e=C;e--;P("_"+(*u++/8 )%2))P("| "+(*u/4)%2);
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!
Und was gibt es an der Code Zeile worüber man sich aufregen sollte?
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.
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!
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
Lesezeichen