[СИ] Коварный malloc.
Язык СИ
ОС UNIX
По совету анонимуса и других людей осваиваю malloc.
Ниже приведена небольшая тестовая программа. Смысл
ее в том, что в функции init_test(); выделяется
память malloc-ом, там же она первично инициируется
пробным текстом, указатель на эту память при
возврате из функции передается через аргумент главной
программе (main), и далее эта память используется
в главной программе.
Как я понимаю, память выделяется в статической памяти,
а не в стеке. И, стало быть, должна быть доступна и
при возврате в main. Выдача программы, как будто,
подтверждает это:
k=init_test()=0
proba malloc(); proba malloc(); proba malloc();
proba malloc() main()
Но сомнения все-же остались. В этом и вопрос:
можно ли выделять память в функции, а потом
использовать ее вне функции?
Кто знает прошу ответить.