[Powered by Google Translate] JOE MCCORMICK: Итак, теперь мы будем говорить о переменных. Переменные в компьютерной науке способом хранения значения. Теперь, что и как мы храним, что Значение не слишком важно. Мы можем иметь значение, слова, которые могли бы храниться в виде строки. Или мы могли бы иметь нечто, что является символом, как письмо. И что бы быть сохранена как символ. Мы могли бы номер, как человек, или 12, это было бы хранится в виде целого числа или Int. Затем, у нас есть разные вещи, как поплавок, который может хранить такие вещи, как 1,01 или 111,13. Эти ценности всегда называли изменяемым. Это означает, что если мы будем хранить номер один в целое число в начало программы в дальнейшем, мы могли бы изменить это число быть три или семь. Теперь, локальных переменных является то, что вы обычно сталкиваетесь, При выполнении функции. Так скажем, вы в вашу основную функцию. И вы хотите создать переменную число. И мы будем хранить целое число в нем. Таким образом, мы могли бы сказать что-то вроде Int пит = 3. Теперь, там вы идете. У вас есть локальная переменная. Теперь эта переменная может быть изменена в дальнейшем в основной Функция, сказав что-то вроде Num = 6 или Num = 7. Но ваша переменная застряли в рамки этой функции. И сфера правило, начинается с фигурной скобки в начало основного и заканчивается фигурной скобкой, что закрывает основные функции. И это локальная переменная теперь застрял внутри этой области. Таким образом, он больше не может быть доступна в другой функции, за пределами главной функции. И как только основная функция заканчивает свое выполнение и возвращается, это локальная переменная называется число ушел. Таким образом, в отличие от локальных переменных, у нас есть что-то называемых глобальных переменных. Теперь, глобальная переменная объявлена ​​в верхней части Программа и могут быть доступны в любом месте программы. Так скажем, Вы объявили глобальную переменную в верхней части Ваша программа, называется тест. Теперь эта переменная может быть доступна в любом месте программы. Вы можете получить доступ к нему в основной функции или функции ниже. Но если вы когда-нибудь попытаетесь создать локальные переменные в одном из эти функции с тем же именем, Тест, есть конфликт. Потому что вы не знаете, какие переменные вы хотите использовать. Вы хотите, чтобы использовать глобальный тест, заявил в верхнем программы? Или вы хотите использовать локальные переменные тест, который Вы пытаетесь создать внутри этой функции? Теперь, это одна из причин, почему мы не хотим просто использовать глобальные переменные свободно. Там-то называется загромождения пространства имен. Даже если вы не имею в виду, вы можете случайно создать локальных переменных, в дальнейшем в программе, с тем же имя глобальной переменной. И это не создает огромные проблемы, когда вы работаете в 10 малых, 20, 30-линия программ. Если у вас есть до тысячи строк кода, вы не будете помню точно, что у вас хранится в глобальной переменной. Таким образом, одна вещь, чтобы рассмотреть, при использовании локальных и глобальных переменных думать о своей области. Теперь, сфера относится к где эти переменные могут быть использованы в программы. Таким образом, глобальная переменная имеет то, что называется глобальной областью, Это означает, что он может быть использован в любом месте программы. После инициализации этой переменной, она может быть использована в любую функцию, будь то основная функция или Функция 10 функций вниз, называются foo10. Это не имеет значения, где вы его используете. Но локальная переменная имеет определенные рамки. И сферы, что локальная переменная определяется где ее инициализации. Теперь, объем, как правило, определяется открытия скобка функции, что переменная объявлена ​​в до закрывающей скобки этой функции. Таким образом, предположим, что вы находитесь в главной функции. И вы создаете переменную. Но сейчас, в этой основной функции, мы вызываем другую функционировать Foo. В функции Foo, мы не можем назвать переменную, мы просто создается в основном функции, потому что это не входит в комплект. Эта переменная только в область в рамках основной функцией. Таким образом, мы могли бы использовать его в дальнейшем, в рамках основной функции, но не входит в функцию, которая вызывается из основной функции. Так как стек и кучу, глобальные переменные храниться в определенной части памяти. Теперь эта часть памяти зависит от системы, которая Вы используете. Глобальные переменные имеют две отдельные пятна, которые они храниться, по одному для инициализируются глобальные переменные, например, если Вы объявили Int тест = 5, в верхней части вашей программы. А другая область для неинициализированных глобальных переменных, если вы только что сказали, внутр тест, в верхней части вашей программы и собирается установить испытание переменным далее в программе. Так что теперь я буду говорить о так называемых # определить, , которая является способом дать символическое имя постоянными. И здесь мы имеем пример программы, которая вычисляет C Площадь круга. А в верхней части программы мы будем делать то, что говорит # Определить пи 3,14159. # Определить технически не создать глобальную переменную. Скорее, это говорит препроцессор компилятора Найти и заменить все экземпляры пи с 3,14159 перед компиляцией. Тем не менее, он становится полезным методом для объявления Константы для использования на протяжении всей программы. Теперь, глядя на площадь функций, которые оно принимает в поплавком рад и просто возвращает площадь круга с радиуса или пи г квадрат, или пи раз рад раза рад. И это где # определить играет ключевую роль. Поскольку компилятор будет в основном заменить, что пи Символ с числом 3,14159. И поэтому мы не должны писать, что снова и снова. И потом, если мы решили использовать более цифр числа Пи, давайте 3.1415926 сказать, мы могли бы только добавить, что к началу программы и не нужно было бы изменить, далее в программе. Это хорошее использование # определить. Мы не хотим, чтобы хранить пи как глобальная переменная, поскольку она может измениться позже в программе. И мы знаем, пи не меняется. Это постоянная. Таким образом, это завершает наше тему глобальных переменных. Итак, сегодня мы говорили о разнице между местным и Глобальные переменные, когда их использовать, в зависимости от их сферы, а почему бы не использовать глобальные переменные по желанию из-за загромождения пространства имен. Я Джо МакКормик. И это CS50.