Sto leggendo il codice sorgente di coreutils per imparare a programmare sotto linux.Cosa fa initialize_main (& argc, & argv)?
Trovo che nella maggior parte dei programmi come ls.c, cat.c, invochino la funzione macro initialize_main() nelle prime righe. Così ho guardato in system.h per trovare l'attuazione:
/* Redirection and wildcarding when done by the utility itself.
Generally a noop, but used in particular for native VMS. */
#ifndef initialize_main
# define initialize_main(ac, av)
#endif
non capisco il motivo per cui definisco una macro e non capisco il commento.
se si osserva dove e come queste macro stanno utilizzando in quel file che si sarebbe venuto a sapere. – Gangadhar
Il commento lo spiega abbastanza bene "Generalmente un noop, ma usato in particolare per il VMS nativo.". Quindi sotto linux, è un niente, niente. VMS probabilmente fa qualcosa di diverso per la gestione degli argomenti. linux non è VMS. –
@CharlieBurns Grazie mille, capito ora. – f00l