Ich verstehe ein Source nicht...



  • Tach,
    ich verstehe folgendes nicht:
    for (_2=0,_1=0x1E2; _2<9 ;putchar(_1&1<<_2?'0':'.'), _2++, !(_2%3)?putchar('\n'):0);

    selber mein compiler hat probleme mit dem _2 und dem _1...
    kann mir einer helfen?

    grezte Hier bitte den Namen eintragen.



  • Also, bei mir klappt es wunderbar:

    #include <stdio.h>
    
    int main(void) {
        int _1, _2;
    
        for (_2=0,_1=0x1E2; _2<9 ;putchar(_1&1<<_2?'0':'.'), _2++, !(_2%3)?putchar('\n'):0);
        return 0;
    }
    

    Wo liegt dein Problem?

    Gruß mcr

    PS: Falls dein Compiler da Probleme mit hat, dann ersetze _2, _1 durch zwei andere Variablennamen.



  • verstehst du das _1 und _2 nicht oder insgesamt das hier:

    for (_2=0,_1=0x1E2; _2<9 ;putchar(_1&1<<_2?'0':'.'), _2++, !(_2%3)?putchar('\n'):0);

    Das sind nur ein paar bit-operatoren und sonst eigentlich nichts, wenn du das nicht verstehst...



  • Das ganze ausführlich geschrieben:

    #include <stdio.h>
    
    int main(void)
    {
    	int val = 0x1E2, i = 0;
    
    	while (i < 9) {
    		if (val&(1<<i))
    			putchar('0');
    		else
    			putchar('.');
    
    		i++;
    
    		if (i%3 == 0)
    			putchar('\n');
    	}
    	return 0; 
    }
    

    Es werden halt die Bit von 0x1E2 angefangen mit dem LSB ausgegeben. Wobei die '0' ein gesetztes Bit und ein '.' ein nicht gesetztes Bit repräsentiert.
    Es werden immer drei Bits in einer Zeile ausgegeben.

    Ausgabe:
    .0.
    ..0
    000
    
    0x1E2 => 1 1110 0010
    


  • wer auch immer diesen code geschrieben hat - hässlicher gehts ja kaum noch.



  • Ja schon, aber bei sowas überhaupt noch die Übersichtlichkeit zu bewahren ist sicherlich ein Meisterwerk xP

    Also das verdient dann Bewunderung xD



  • blan schrieb:

    wer auch immer diesen code geschrieben hat - hässlicher gehts ja kaum noch.

    einfach die geschweiften klammern in die nächste zeile machen. das wirkt oft wunder.
    🙂



  • format-freak schrieb:

    blan schrieb:

    wer auch immer diesen code geschrieben hat - hässlicher gehts ja kaum noch.

    einfach die geschweiften klammern in die nächste zeile machen. das wirkt oft wunder.
    🙂

    wo ist denn da eine geschweifte klammer 😕



  • erbsenzähler schrieb:

    wo ist denn da eine geschweifte klammer

    ich meinte den code von legaloplex.
    🙂


Anmelden zum Antworten