Я читаю исходный код ядра, чтобы изучить программирование под Linux.Что делает initialize_main (& argc, & argv)?
Я нахожу, что в большинстве программ, таких как ls.c, cat.c, они вызывают макрофункцию initialize_main() в первых нескольких строках. Так что я посмотрел в system.h найти реализацию:
/* 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
Я не понимаю, почему определить такой макрос, и я не понимаю, комментарий.
, если вы наблюдаете, где и как эти макросы используют в том, что файлы, которые вы бы узнали. – Gangadhar
Комментарий объясняет это достаточно хорошо «Вообще нооп, но используется, в частности, для родной VMS». Итак, под linux, это nop, ничего. VMS, вероятно, делает что-то другое для обработки аргументов. Linux не является VMS. –
@CharlieBurns Спасибо большое, получил его сейчас. – f00l