comparison cut.txt @ 11:04a8a33fc48a

Zwischenstand
author markus schnalke <meillo@marmaro.de>
date Mon, 11 May 2015 17:14:00 +0200
parents 7e1214b556b9
children 9f17c512fb5c
comparison
equal deleted inserted replaced
10:7e1214b556b9 11:04a8a33fc48a
343 Ob man die Heirloom-Implementierung als besonders kryptisch 343 Ob man die Heirloom-Implementierung als besonders kryptisch
344 oder als besonders elegant bezeichnen will, das soll der 344 oder als besonders elegant bezeichnen will, das soll der
345 eigenen Einschaetzung des Lesers ueberlassen bleiben. 345 eigenen Einschaetzung des Lesers ueberlassen bleiben.
346 346
347 347
348 Die interne Struktur des C-Codes ist meist aehnlich. Neben der
349 obligatorischen main-Funktion, die die Kommandozeilenargumente
350 verarbeitet, gibt es im Normalfall eine Funktion, die die
351 Feldauswahl in eine interne Datenstruktur ueberfuehrt, desweiteren
352 haben fast alle Implementierungen separate Funktionen fuer die
353 zwei bzw. drei Modi. Bei den POSIX-konformen Implementierungen
354 wird die `-b -n'-Kombination als weiterer Modus behandelt, und
355 damit in einer eigenen Funktion umgesetzt. Nur bei der fruehen
356 System III-Implementierung (und seiner 4.3BSD-UWisc-Variante)
357 wird nichts aus der main-Funktion ausgelagert, ausser den
358 Fehlerausgaben.
359
360 Bei System III ist die Anzahl der moeglichen Felder und damit auch
361 die Zeilenlaenge auf 512 begrenzt.
362
363 Bei 4.3BSD-Reno liegt die Grenze bei _BSD_LINE_MAX
364
365 NetBSD 1993 _POSIX2_LINE_MAX
366
367 NetBSD 2012 dyn alloc
368
369
370 4.3BSD-Reno
371 * set a byte in the positions array to indicate if a field or
372 * column is to be selected; use +1, it's 1-based, not 0-based.
373 * This parser is less restrictive than the Draft 9 POSIX spec.
374 * POSIX doesn't allow lists that aren't in increasing order or
375 * overlapping lists. We also handle "-3-5" although there's no
376 * real reason too.
377
378
379
348 Schaut man sich die SCCS-IDs (die vom damaligen 380 Schaut man sich die SCCS-IDs (die vom damaligen
349 Versionskontrollsystem eingefuegt wurden) in den BSD-Quellen an, 381 Versionskontrollsystem eingefuegt wurden) in den BSD-Quellen an,
350 dann findet man dort Versionsnummern, die die Entwicklung 382 dann findet man dort Versionsnummern, die die Entwicklung
351 dokumentieren: 383 dokumentieren:
352 384