Есть ли в СИ оператор расширения области видимости?

Есть ли в СИ оператор расширения области видимости? :: Решаю университетскую задачку, решение правильное, но не знаю, есть ли в СИ расширение области видимости:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string>
enum Winner
{
    kFirstPlayer,
    kSecondPlayer,
    kNoWinner
};

enum CurMode
{
    kFirst,
    kSecond
};

Winner Solve(char* str)
{
    CurMode mode = kFirst;
    char cur_symbol = 'a';
    bool cur_winner_state = false;
    for (int i = 0; i < strlen(str); i++)
    {
        if (str[i] == ' ')
        {
            if (!cur_winner_state)
            {
                if (mode == kFirst)
                {
                    return Winner::kSecondPlayer;
                }
                else
                {
                    return Winner::kFirstPlayer;
                }
            }
            cur_symbol++;
            cur_winner_state = false;
            if (mode == CurMode::kFirst)
            {
                mode = CurMode::kSecond;
            }
            else
            {
                mode = CurMode::kFirst;
            }
        }
        else
        {
            if (str[i] == cur_symbol)
            {
                cur_winner_state = true;
            }
        }
    }
    if (!cur_winner_state)
    {
        if (mode == kFirst)
        {
            return Winner::kSecondPlayer;
        }
        else
        {
            return Winner::kFirstPlayer;
        }
    }
    return kNoWinner;
}

int main()
{
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    char buffer[600];
    gets_s(buffer);
    char* my_str = (char*)malloc(sizeof(char) * (strlen(buffer) + 1));
    strcpy(my_str, buffer);
    Winner ans = Solve(my_str);
    if (ans == Winner::kFirstPlayer)
    {
        printf("PLAYER 1");
    }
    else
    {
        if (ans == Winner::kSecondPlayer)
        {
            printf("PLAYER 2");
        }
        else
        {
            printf("NO WINNER");
        }
    }
    free(my_str);
}

Ответы (0 шт):