Здравствуйте, Chelovek_, Вы писали:
C_> Зачем нужен и что делает windows.h ? C_> В какой-то библиотеке он включается следующим фрагментом:
Windows.h нужен для того, что бы ты мог использовать в своей программе функционал, предоставляемый операционной системой (Windows 95, 98, NT, 2000, XP).
C_>#ifdef _WIN32 C_># include <windows.h> C_># ifdef small C_> /* windows.h define small to char */ C_># undef small
C_> И что за _WIN32, кем и в каком месте он определяется? C_> Если кто прокомментирует, буду премного благодарен.
А макрос _WIN32 генерируется компилятором, и говорит о том какая версия операционной системы используется.
_WIN16 — 16-ти разрядная
_WIN32 — 32-х разрядная
и вообще макрос _WIN?? говорит о том что используются винды.
Хорошо иметь достойных потомков, но слава принадлежит нашим предкам. (Плутарх)
C_>> Зачем нужен и что делает windows.h ? C_>> В какой-то библиотеке он включается следующим фрагментом: T>Windows.h нужен для того, что бы ты мог использовать в своей программе функционал, предоставляемый операционной системой (Windows 95, 98, NT, 2000, XP).
Спасибо. А не могли бы пояснить (пример какой-нибудь), что такое функционал, предоставляемый Windows ?
Например, если программа работет в консольном режиме и занимается вычислениями, она все равно использует какие-то услуги из Windows.h ?
C_>>#ifdef _WIN32 C_>># include <windows.h> C_>># ifdef small C_>> /* windows.h define small to char */ C_>># undef small C_>> И что за _WIN32, кем и в каком месте он определяется? C_>> Если кто прокомментирует, буду премного благодарен. T>А макрос _WIN32 генерируется компилятором, и говорит о том какая версия операционной системы используется. T>_WIN16 — 16-ти разрядная T>_WIN32 — 32-х разрядная T>и вообще макрос _WIN?? говорит о том что используются винды.
Еще раз спасибо. А можно сказать компилятору (в настройках каких-нибудь), чтобы он этот макрос не генерировал? (чисто теоретически, на практике понятно, что он много кому может быть нужен).
Здравствуйте, Chelovek_, Вы писали:
C_>>> Зачем нужен и что делает windows.h ? C_>>> В какой-то библиотеке он включается следующим фрагментом: T>>Windows.h нужен для того, что бы ты мог использовать в своей программе функционал, предоставляемый операционной системой (Windows 95, 98, NT, 2000, XP).
C_> Спасибо. А не могли бы пояснить (пример какой-нибудь), что такое функционал, предоставляемый Windows ? C_> Например, если программа работет в консольном режиме и занимается вычислениями, она все равно использует какие-то услуги из Windows.h ?
имеется в виду явное использование. То, что его рантайм использует неявно, тебя не должно волновать.
C_> Еще раз спасибо. А можно сказать компилятору (в настройках каких-нибудь), чтобы он этот макрос не генерировал? (чисто теоретически, на практике понятно, что он много кому может быть нужен).
А не могли бы пояснить (пример какой-нибудь), что такое функционал, предоставляемый Windows ?
Например, если программа работет в консольном режиме и занимается вычислениями, она все равно использует какие-то услуги из Windows.h ?
Там содержаться типы, выходящие за рамки стандарта C++ и использующиеся в Windows: HANDLE, HWND, UMSG итд.
Так же там содержаться определения части системных функций и структур — CreateWindowA() и прочие.
Если программы ТОЛЬКО считает — тоесть не требует от ползователя ввода и ничего никуда не выводит, например:
void main(void)
{
int x = 1;
int y = 2;
int z = x+y*2;
}
То для такой программы Windows.h включать не обязательно. А вот как только нужно вывести на экран диалог с помошью MessageBox() — сразу же придется. Бо в стандарте C++ никакого MessageBox() не предусмотрено