Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Rätselecke » 41. Virtual rästel (verstehen und golfizieren)

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] [ 2 ] > 3 < [ 4 ] [ 5 ]
020
28.08.2003, 16:52 Uhr
0xdeadbeef
Gott
(Operator)


Ups, ja. Inzwischen hab ichs auch gemerkt, und das hat mich auf 148 zurückgeschmissen. Verdammt.

C++:
char b[17]="\n";int f,i;main(n,s)int*s;{for(f=--n*open(s[1],0);read(f,b+1,16);puts(b)){printf("%08x\n",i++);for(n=0;b[n];printf("%02x ",b[n++]));}}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 28.08.2003 um 16:52 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
021
28.08.2003, 16:56 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


passt immer noch nicht
der macht newlines wo keine sein sollen

hast du dir jetzt auch die windowsmentalität angwöhnt extrem starken verbesserungswürdigen code zu posten?
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
022
28.08.2003, 17:02 Uhr
0xdeadbeef
Gott
(Operator)


Schön, dass du einsiehst, dass das eine Windows-Mentalität ist. Nein, ich hab die andere Windows-Mentalität ausgegraben, die ganze Sache völlig falsch angefangen, weil ich, anstatt das Programm einmal durchzukompilieren und zu sehen, was es macht, nur einmal überflogen habe, dann anfing zu coden, wobei völliger Murks rauskam, den ich durch Patches noch zu retten versucht habe.

Ich zieh mich jetzt mal ne halbe Stunde zum Brüten zurück.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
023
28.08.2003, 17:10 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



Zitat:

Ich zieh mich jetzt mal ne halbe Stunde zum Brüten zurück.


So so ein schneller Brüter, da bin ich ja mal auf die "kranke verstrahlte Lösung" gespannt
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
024
28.08.2003, 17:13 Uhr
0xdeadbeef
Gott
(Operator)


OK. Ich hab jetzt ne Beta.

C++:
char b[16];int f,i;main(n,s)int*s;{for(f=--n*open(s[1],0);read(f,b,16)&&printf("%08x ",16*i++);puts(b))for(n=-1;b[++n];b[n]=isprint(b[n])?b[n]:45)printf("%02x ",b[n]);}


Wenn man die Datei über stdin füttert, läufts. Wenn man sie als Parameter angibt, öffnet er zwar die richtige Datei, gibt aber immer und immer wieder die erste Zeile aus. Ich würde lügen, wenn ich sagen würde, dass ich wüßte warum. Das sind 169 Zeichen - sieht einer von euch den Fehler?
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
025
28.08.2003, 17:23 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



C++:
f=--n*open(s[1],0);



erklär mir mal bitte den hier

ist wenn f==0 ist automatisch stdin? woher weiss man das?
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
026
28.08.2003, 17:33 Uhr
0xdeadbeef
Gott
(Operator)


Ich glaube, das steht in POSIX. Hier ist einer mit 178, der läuft:

C++:
char b[17];int f,i,j;main(c,s)int*s;{for(f=--c*open(s[1],0);read(f,&c,1);++i%16||puts(b))i%16||printf("%08x\n",i),printf("%02x ",c),b[j++%16]=isprint(c)?c:45;b[j%16]=0;puts(b);}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 28.08.2003 um 17:40 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
027
28.08.2003, 17:35 Uhr
0xdeadbeef
Gott
(Operator)


stdout entspricht übrigens der 1, stderr der 2. Deswegen funzen auf der Unix-Shell auch solche Umleitungen wie 2>&1, was nichts anderes bedeutet als "Schreib mir das, was aus 2 (stderr) kommt, and die Adresse von 1 (stdout)".
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
028
28.08.2003, 17:47 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ne funzt nicht so ganz richtig
Ich glaub du musst wenn es auf die 16 nicht passt noch mit nullen auffüllen oder zumindest die ausgabe der asciiwerte verschieben so das die alle untereinander stehen. Halt so wie das bei einem Hexeditor aussieht

Und du musst ascii 46 (Punkt) nehmen

und der macht immer ein newline nach der positionsangabe
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 28.08.2003 um 17:52 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
029
28.08.2003, 18:06 Uhr
0xdeadbeef
Gott
(Operator)


Meinetwegen. Dann brauch ich aber 185:

C++:
char b[17];int f,i,j;main(c,s)int*s;{for(f=--c*open(s[1],0);read(f,&c,1)||(c=0)||j;(j=++j%16)||puts(b))j||printf("%08x ",16*i++),printf("%02x ",c),b[j]=isprint(c)?c:46;b[j]=0;puts(b);}


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 28.08.2003 um 18:06 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] [ 2 ] > 3 < [ 4 ] [ 5 ]     [ Rätselecke ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: