[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFR] man://manpages-de/malloc.3



Hallo Martin!

Am 18. Oktober 2012 20:32 schrieb Martin Eberhard Schauer
<Martin.E.Schauer@gmx.de>:
> 27 (31) Meldungen, 291 Zeilen PO, 125 Zeilen Handbuch
>
> Viel Spaß,
>    Martin

Meine Anmerkungen:

> #. type: Plain text
> msgid ""
> "The B<free>()  function frees the memory space pointed to by I<ptr>, which "
> "must have been returned by a previous call to B<malloc>(), B<calloc>()  or "
> "B<realloc>().  Otherwise, or if I<free(ptr)> has already been called before, "
> "undefined behavior occurs.  If I<ptr> is NULL, no operation is performed."
> msgstr ""
> "B<free>() gibt den Speicher frei, auf den I<ptr> zeigt, welcher von einem "
> "früheren Aufruf von B<malloc>(), B<calloc>() oder B<realloc>() belegt worden "
> "sein muss. Andernfalls oder wenn I<free(ptr)> bereits aufgerufen wurde, ist "
> "das Verhalten nicht definiert. Wenn I<ptr> B<NULL> ist, wird keine Operation "
> "ausgeführt."
»NULL« ist im Original nicht fett, wieso bei der Übersetzung? Und falls »NULL«
in der Übersetzung fett sein soll, dann überall. Derzeit ist es eine
Mischung aus
fett und nicht fett:
s/B<NULL>/NULL/

Wenn die Mischung fett/kurisv bleibt, dann:
s/I<free(ptr)>/B<free(>I<ptr>B<)>/

> #. type: Plain text
> msgid ""
> "The B<realloc>()  function changes the size of the memory block pointed to "
> "by I<ptr> to I<size> bytes.  The contents will be unchanged in the range "
> "from the start of the region up to the minimum of the old and new sizes.  If "
> "the new size is larger than the old size, the added memory will I<not> be "
> "initialized.  If I<ptr> is NULL, then the call is equivalent to I<malloc"
> "(size)>, for all values of I<size>; if I<size> is equal to zero, and I<ptr> "
> "is not NULL, then the call is equivalent to I<free(ptr)>.  Unless I<ptr> is "
> "NULL, it must have been returned by an earlier call to B<malloc>(), B<calloc>"
> "()  or B<realloc>().  If the area pointed to was moved, a I<free(ptr)> is "
> "done."
> msgstr ""
> "B<realloc>() ändert die Größe des Speicherblocks, auf den I<ptr> zeigt, auf "
> "I<size> Byte. Der Inhalt bleibt unverändert im Bereich vom Anfang des "
> "Speicherbereichs bis zum Minimum von alter und neuer Größe. Falls die neue "
> "Größe die alte überschreitet, wird der zusätzliche Speicher I<nicht> "
> "initialisiert. Falls I<ptr> gleich B<NULL> ist, ist der Aufruf äquivalent zu "
> "B<malloc>(I<(size>B<)>; falls die Größe gleich Null ist und I<ptr> ist von "
> "NULL verschieden, ist der Aufruf äquivalent zu B<free(>I<ptr>B<)>. Wenn "
> "I<ptr> nicht B<NULL> ist, muss er von einem früheren Aufruf von B<malloc>(), "
> "B<calloc>() oder B<realloc>() zurückgegeben worden sein."
Auch hier:
s/B<NULL>/NULL/

Noch eine Änderung zum Original, die ich unschön finde:
s/B<malloc>(I<(size>B<)>/I<malloc(size)/
s/B<free(>I<ptr>B<)>/I<free(ptr)>

Wenn die Mischung fett/kurisv bleibt, dann (Klammer zu viel und falsch
markiert):
s/B<malloc(>I<size>B<)>
> #. type: Plain text
> msgid ""
> "Crashes in B<malloc>(), B<calloc>(), B<realloc>(), or B<free>()  are almost "
> "always related to heap corruption, such as overflowing an allocated chunk or "
> "freeing the same pointer twice."
> msgstr ""
> "Abstürze in B<malloc>(), B<calloc>(), B<realloc>(), or B<free>() haben "
> "nahezu immer einen Bezug zu einem beschädigten Heap, wie z.B. eine Nutzung "
> "von mehr als dem zugeordneten Bereich (overflowing) oder die zweimalige "
> "Freigabe eines Zeigers."
s/ B<realloc>(), or B<free>()/ B<realloc>() oder B<free>()/

> #. type: Plain text
> msgid ""
> "The B<realloc>()  function returns a pointer to the newly allocated memory, "
> "which is suitably aligned for any kind of variable and may be different from "
> "I<ptr>, or NULL if the request fails.  If I<size> was equal to 0, either "
> "NULL or a pointer suitable to be passed to B<free>()  is returned.  If "
> "B<realloc>()  fails the original block is left untouched; it is not freed or "
> "moved."
> msgstr ""
> "Die Funktion B<realloc>() gibt einen Zeiger auf den neu belegten Speicher "
> "zurück, welcher für alle Arten von Variablen  passend ausgerichtet ist und "
> "sich von I<ptr> unterscheiden kann, oder B<NULL> falls die Anforderung "
> "scheitert. Falls I<size> gleich 0 war, wird entweder NULL oder ein für die "
> "Übergabe an B<free>() geeigneter Zeiger zurückgegeben. Wenn B<realloc>() "
> "scheitert, bleibt der ursprüngliche Block unverändert - er wird nicht "
> "freigegeben oder verändert."
Hier auch:
s/oder B<NULL> falls/oder NULL falls/

ansonsten:
s/entweder NULL oder/entweder B<NULL> oder/

Grüße
ErikE


Reply to: