LINUX.ORG.RU

История изменений

Исправление soomrack, (текущая версия) :

Чего плохого переставить pattern, s, end в начало?

В целом – ничего. Объявлять переменные непосредственно перед их использованием не стоит воспринимать как догму.

Код должен быть ясным.

Поэтому если есть переменные, ради которых код и написан, то их вполне логично объявить в начале функции, и откомментировать.

Касательно стиля этого твоего примера кода, замечаний можно сделать много…

Например, у тебя много уровней вложенности, которые скрывают основной код, зачем ты их спрятал так глубоко?

Если писать так, то смысл будет понятней, и основной код оборачивать в условный оператор не придется:

s = g_strstr_len(path, -1, pattern));
if(s == 0) return g_strdup(default_id);

...

Исправление soomrack, :

Чего плохого переставить pattern, s, end в начало?

В целом – ничего. Объявлять переменные непосредственно перед их использованием не стоит воспринимать как догму.

Код должен быть ясным.

Поэтому если есть переменные, ради которых код и написан, то их вполне логично объявить в начале функции, и откомментировать.

Касательно стиля этого твоего примера кода, замечаний можно сделать много…

Например, у тебя много уровней вложенности, которые скрывают основной код, зачем ты их спрятал так глубоко?

Если писать так, то смысл будет понятней, и основной код оборачивать в условный оператор не придется:

s = g_strstr_len(path, -1, pattern));
if(s == 0) return g_strdup(default_id);

...

Исходная версия soomrack, :

Чего плохого переставить pattern, s, end в начало?

В целом – ничего. Объявлять переменные непосредственно перед их использованием не стоит воспринимать как догму.

Код должен быть ясным.

Поэтому если есть переменные, ради которых код и написан, то их вполне логично объявить в начале функции, и откомментировать.

Касательно стиля этого твоего примера кода, замечаний можно сделать много…

Например, у тебя много уровней вложенности, которые скрывают основной код, зачем ты их спрятал так глубоко?

Если писать так, то смысл будет понятней, и основной код оборачивать в условный оператор не придется:

s = g_strstr_len(path, -1, pattern));
if(s == 0) g_strdup(default_id);

...