вы можете использовать внутреннюю переменную GPVAL_SYSNAME
:
gnuplot> print GPVAL_SYSNAME
Windows_NT-10.0
, которая в Windows инициализирована в eval.c
как:
ZeroMemory(&osvi, sizeof(OSVERSIONINFO));
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
GetVersionEx(&osvi);
snprintf(s, 30, "Windows_NT-%ld.%ld", osvi.dwMajorVersion, osvi.dwMinorVersion);
fill_gpval_string("GPVAL_SYSNAME", s);
Для проверки запуска этой строкис помощью «Windows» можно использовать внутреннюю функцию strstrt
Gnuplot как:
if (strstrt(GPVAL_SYSNAME, "Windows") == 1) {
....
}
Кроме того, есть также GPVAL_MACHINE
:
gnuplot> print GPVAL_MACHINE
x86_64