const char* BuildPath( const char* base, const char* game, const char* relativePath ) {
static char szPath[260];
std::fill( std::begin( szPath ), std::end( szPath ), 0 );
// Махинации с путями
sprintf_s( szPath, _countof( szPath ), "%s/%s/%s", base, game, relativePath );
std::replace( std::begin( szPath ), std::end( szPath ), '\\', '/' );
std::transform( std::begin( szPath ), std::end( szPath ), std::begin( szPath ),
[] ( unsigned char c ) { return ::tolower( c ); } ); //4996
return szPath;
}
Используйте array:
const char* BuildPath( const char* base, const char* game, const char* relativePath ) {
static ::std::array<char, 260> szPath;
std::fill( std::begin( szPath ), std::end( szPath ), 0 );
// Махинации с путями
sprintf_s(szPath.data(), szPath.size(), "%s/%s/%s", base, game, relativePath );
std::replace( std::begin( szPath ), std::end( szPath ), '\\', '/' );
std::transform( std::begin( szPath ), std::end( szPath ), std::begin( szPath ),
[] ( unsigned char c ) { return ::tolower( c ); } ); //4996
return szPath.data();
}
const char* BuildPath( const char* base, const char* game, const char* relativePath ) {
static char szPath[260];
std::fill(szPath , szPath + 260, 0 );
// Махинации с путями
sprintf_s( szPath, _countof( szPath ), "%s/%s/%s", base, game, relativePath );
std::replace(szPath , szPath + 260 , '\\', '/' );
std::transform( szPath, szPath + 260, szPath,
[] ( unsigned char c ) { return ::tolower( c ); } ); //4996
return szPath;
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей