История изменений
Исправление ozkriff, (текущая версия) :
насчёт неизменяемых переменных внутри функций я знаю, но каждый раз писать example(const int x, const int y, и т.д.)...
Если параметр передается по копированию, то это ладно. Но для указателей я бы таки писал const
везде, где можно.
gcc -Wall приму к сведению.
Лучше gcc -Wall -Wextra -pedantic
и -std=c89
или -std=c99
. И еще каким-нибудь строгим статическим анализатором заодно)
Насколько эти глобальные переменные мешают? Ведь их очень мало. Я знаю что нужно избегать большого их количества.
В данном конкретном случае эти три переменные, конечно, никому жизнь не портят. Но, когда программа начинает разрастаться, нужно быть дико внимательным, чтобы они не расползлись по коду и не размножились. Особенно плохо становится, когда между ними появляется какая-нибудь неявная связь, и перед вызовом каких-нибудь функций приходится «настраивать» для них глобальное окружение. Лучше сразу писать без глобальных изменяемых переменных.
Тем более я теперь все глобальные переменные буду именовать с двумя подчёркиваниями в начале.
Хм, я видел, что если они все-таки нужны, им просто префикс g_
дают. По крайней мере парочка первых попавшихся кодстайлов в гугле с этим согласна и вот: http://stackoverflow.com/questions/1722112/what-are-the-most-common-naming-co...
Global variables: g_lowerCase or g_lower_case (searchable by g_ prefix)
Кстати, из принятого ответа оттуда :) :
Global variables: just don't use global variables. They are evil.
Исходная версия ozkriff, :
насчёт неизменяемых переменных внутри функций я знаю, но каждый раз писать example(const int x, const int y, и т.д.)...
Если параметр передается по копированию, то это ладно. Но для указателей я бы таки писал const
везде, где можно.
gcc -Wall приму к сведению.
Лучше gcc -Wall -Wextra -pedantic
и -std=c89
или -std=c99
. И еще каким-нибудь строгим статическим анализатором заодно)
Насколько эти глобальные переменные мешают? Ведь их очень мало. Я знаю что нужно избегать большого их количества.
В данном конкретном случае эти три переменные, конечно, никому жизнь не портят. Но, когда программа начинает разрастаться, нужно быть дико внимательным, что бы они не расползлись по коду и не размножились. Особенно плохо становится, когда между ними появляется какая-нибудь неявная связь и перед вызовом каких-нибудь функций приходится «настраивать» для них глобальное окружение. Лучше сразу писать без глобальных изменяемых переменных.
Тем более я теперь все глобальные переменные буду именовать с двумя подчёркиваниями в начале.
Хм, я видел, что если они все-таки нужны, им просто префикс g_
дают. По крайней мере парочка первых попавшихся кодстайлов в гугле с этим согласна и вот: http://stackoverflow.com/questions/1722112/what-are-the-most-common-naming-co...
Global variables: g_lowerCase or g_lower_case (searchable by g_ prefix)
Кстати, из принятого ответа оттуда :) :
Global variables: just don't use global variables. They are evil.