[linux-l] Arrays in C

Frank Reker frank at reker.net
Di Nov 22 12:43:28 CET 2005


Am Mon 21. Nov 2005 23:39 +0000 schrieb Oliver Bandel:

>On Mon, Nov 21, 2005 at 10:08:18PM +0100, Axel Wei wrote:

[...]
>Und weniges nur hasse ich mehr als Pfusch.
[...]
>Aber wenn man auf sowas hingewiesen wird, es zu gnorieren,
>das ist dann doof.
[...]
>
>> In diesem Sinn wäre
>> 
>> 	if (argc <= 1){
>> 		return 1;
>> 	}
>>         execv(argv[1], argv + 1);
>> 
>> sicher besser, als der blinde exec-Aufruf.
>
>Woher weißt Du, daß das korrekt gesetzt ist?
>Wenn der Compiler alles so anders macht...

ich weiss gar nicht weshalb du dich so aufregst. wenn obiges
programm (nennen wir es a) als ersten parameter den namen eines
anderen programms (b) erwartet welches (a) dann aufruft, dann
ist die anweisung: exec (argv[1], argv+1) korrekter code.
schau dir mal courier imap an, dort wird das genau so gemacht,
und zwar sogar mehr als einmal: a ruft b auf, b ruft c (zweiter 
parameter) auf, ...
es muss dann nur dokumentiert werden, was (a) an parametern erwartet.


-- 
Don't worry be happy ...
Ciao Frank
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 189 bytes
Beschreibung: nicht verfügbar
URL         : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20051122/5674c7c0/attachment.sig>


Mehr Informationen über die Mailingliste linux-l