Go to the documentation of this file. 8 #ifndef WIN32_SNPRINTF_H 9 #define WIN32_SNPRINTF_H 23 (defined(_MSC_VER) && _MSC_VER < 1900) || \ 24 (defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) && defined(__NO_ISOCEXT)) || \ 25 (defined(__MINGW64_VERSION_MAJOR) && !( \ 26 (defined (__USE_MINGW_ANSI_STDIO) && __USE_MINGW_ANSI_STDIO != 0)) || \ 27 (__MINGW64_VERSION_MAJOR >= 6 && defined(_UCRT)) || \ 28 (__MINGW64_VERSION_MAJOR >= 8 && !defined(__NO_ISOCEXT)) || \ 38 (defined(_MSC_VER) && _MSC_VER < 1300) || \ 39 (defined(__MSVCRT_VERSION__) && __MSVCRT_VERSION__ < 0x700) || \ 41 #define CHECK_SCPRINTF 0 42 #define IF_SCPRINTF(expr) 0 43 #define ELSE_SCPRINTF(expr) expr 45 #define CHECK_SCPRINTF 1 46 #define IF_SCPRINTF(expr) expr 47 #define ELSE_SCPRINTF(expr) 0 51 #define snprintf(buf, size, fmt, ...) ( \ 52 (((size) != 0 && (buf) != NULL) ? ( \ 53 _snprintf((buf), (size), (fmt), __VA_ARGS__), \ 54 (((char *)buf)[(size_t)(size)-1] = 0), \ 56 (CHECK_SCPRINTF ? IF_SCPRINTF( \ 57 _scprintf((fmt), __VA_ARGS__) \ 59 ((size) != 0 && (buf) != NULL) ? \