aboutsummaryrefslogtreecommitdiff
path: root/c/util.h
blob: 51fd02000e75c41dbd50ca9d2dd9277bd912cd7e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef UTIL_H
#define UTIL_H

#include <memory>

/* Format static wide string. */
template<size_t N, typename... T>
inline int Swprintf(wchar_t (&buf)[N], const wchar_t* const fmt, T... xs)
{
	return _snwprintf_s(buf, N, _TRUNCATE, fmt, xs...);
}

/* Copy to static narrow string buffer. */
template <size_t N>
inline int Strcpy(char (&dst)[N], const char* const src)
{
	return strcpy_s(dst, N, src);
}

inline int Cmp(const int a, const int b)
{
	if (a == b) return 0;
	if (a > b) return 1;
	return -1;
}

#endif