﻿# V3183\. Code formatting implies that the statement should not be a part of the 'then' branch that belongs to the preceding 'if' statement\.

Анализатор обнаружил инструкцию, относящуюся к оператору 'if'\. При этом форматирование не соответствует логике исполнения: код может содержать ошибку\.

Рассмотрим пример:

```cpp
string GetArgumentPositionStr(Argument argument)
{
  if (argument.first)
    return "first";

  if (argument.second)

  if (argument.third)
    return "third";

  return String.Empty;
}
```

В данном примере пропущена 'then' ветвь условной конструкции 'if \(argument\.second\)'\. Из\-за этого ошибочный фрагмент кода будет работать так же, как и приведённый ниже:

```cpp
if (argument.second)
{
  if (argument.third)
    return "third";
}
```

Исправленный вариант:

```cpp
string GetArgumentPositionStr(Argument argument)
{
  if (argument.first)
    return "first";

  if (argument.second)
    return "second";

  if (argument.third)
    return "third";

  return String.Empty;
}
```