Консультация № 87763
20.05.2007, 16:27
0.00 руб.
0 5 5
Привет экспертам!

Не подскажете где можно посмотреть код системных функций (DOS or WIN).

Например таких как fclose(), или CreateDirectory() ?

И соответственно попробовать написать программу без вызова последних.

Смотрел в папках include, соответствующие файлы *.h, ни черта там не понял.

Не подскажете как и где правильно посмотреть, и соответ. написать.

Спасибо.

Обсуждение

Неизвестный
20.05.2007, 16:45
общий
это ответ
Здравствуйте, DEVILL!
Исходники msvcrt (fopen, fclose, ...) лежат в папке Program Files\\Microsoft Visual Studio 8\\VC\\crt\\src\\
Исходники API-функций строго засекречены MS-ом. Впрочем, похожие функции можно посмотреть в исходниках ReactOS: http://svn.reactos.org/svn/reactos/
Неизвестный
20.05.2007, 17:36
общий
это ответ
Здравствуйте, DEVILL!
Очень интересный вопрос. Про коды функций в win я ничего не слышал.
В общих чертах- когда вы вызываете функцию меняется ее имя на адрес, выполняется переход по этому адресу и выполняется код функции
Такого понятия "код функции" не существует
Неизвестный
20.05.2007, 19:51
общий
это ответ
Здравствуйте, DEVILL!
fclose() в Win32 это оболочка
для более сложных вызовов API - фу-ций.
CreateDirectory() - возможно тоже ф-ция оболочка.
Их ассемблерный код можно посмотреть отладчиком уровня ядра.
Удачи!
Неизвестный
20.05.2007, 20:36
общий
это ответ
Здравствуйте, DEVILL!
fclose() это не системная функция, а часть библиотеки. Посмотреть можно например в инсталляционной директории VisualC. У меня это находится в C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC, у вас может быть в другом месте.
Неизвестный
20.05.2007, 22:41
общий
это ответ
Здравствуйте, DEVILL!
Берете отладчик, пишете маленькую програмку которая использует эти функции, и понеслась, а вообще если "Смотрел в папках include, соответствующие файлы *.h, ни черта там не понял.", то думаю это вам не поможет и всетаки придется их использовать.
Форма ответа