Как сделать переменную в visual studio

Обновлено: 08.07.2024

Объявить можно переменную любого действительного типа. Важно подчеркнуть, что возможности переменной определяются ее типом. Например, переменную типа bool нельзя использовать для хранения числовых значений с плавающей точкой. Кроме того, тип переменной нельзя изменять в течение срока ее существования. В частности, переменную типа int нельзя преобразовать в переменную типа char.

Инициализация переменной

Задать значение переменной можно, в частности, с помощью оператора присваивания. Кроме того, задать начальное значение переменной можно при ее объявлении. Для этого после имени переменной указывается знак равенства (=) и присваиваемое значение. Если две или более переменные одного и того же типа объявляются списком, разделяемым запятыми, то этим переменным можно задать, например, начальное значение. Ниже приведена общая форма инициализации переменной:

Переменные, являющиеся полями класса или структуры, если не инициализированы явно, по умолчанию обнуляются в момент создания.

Переменные, локальные по отношению к методу, должны быть явно инициализированы в коде до появления любого оператора, в котором используются их значения. В данном случае при объявлении переменной ее инициализация не происходит автоматически, но компилятор проверит все возможные пути потока управления в методе и сообщит об ошибке, если обнаружит любую возможность использования значения этой локальной переменной до ее инициализации.

Динамическая инициализация

В данном примере объявляются три локальные переменные i1, i2, result, первые две из которых инициализируются константами, а переменная result инициализируется динамически с использованием метода Math.Sqrt(), возвращающего квадратный корень выражения. Следует особо подчеркнуть, что в выражении для инициализации можно использовать любой элемент, действительный на момент самой инициализации переменной, в том числе вызовы методов, другие переменные или литералы.

Неявно типизированные переменные

Неявно типизированная переменная объявляется с помощью ключевого слова var и должна быть непременно инициализирована. Для определения типа этой переменной компилятору служит тип ее инициализатора, т.е. значения, которым она инициализируется:

Единственное отличие неявно типизированной переменной от обычной, явно типизированной переменной, — в способе определения ее типа. Как только этот тип будет определен, он закрепляется за переменной до конца ее существования.

Давайте рассмотрим пример, где в консоль будем выводить типы неявно типизированных переменных:

Где я должен объявить переменные, которые я хотел бы использовать в формах Windows?

Запуск кода дает следующую ошибку:

Решение

В вашем текущем коде iMyvariable сохраняется как локальная переменная, а не как глобальная переменная. За пределами скобок вокруг обработчика событий он перестает существовать.

Вместо этого попробуйте объявить переменную globaly в верхней части класса, а затем назначьте ее внутри вашего метода. (Примечание: вы должны быть внутри метода, чтобы создать переменную.)

Как и в предыдущих уроках, в наших примерах будет использоваться Visual Studio – если вы используете другую IDE/отладчик, команды могут называться немного по-другому или располагаться в других местах.

Предупреждение

Отслеживание переменных

Отслеживание переменной – это процесс проверки значения переменной во время выполнения программы в режиме отладки. Большинство отладчиков предоставляют несколько способов сделать это.

Давайте посмотрим на пример программы:

Это пример довольно простой программы – она печатает числа 1, 3 и 6.

Сначала запустите выполнение до курсора в строке 6.

Рисунок 1 Точка выполения программы после запуска выполнения до курсора в строке 6

Рисунок 1 – Точка выполнения программы после запуска выполнения до курсора в строке 6

На данный момент переменная x уже создана и инициализирована значением 1, поэтому, когда мы проверяем значение x , мы должны ожидать увидеть значение 1.

Самый простой способ проверить значение простой переменной, такой как x , – навести указатель мыши на переменную x . Некоторые современные отладчики поддерживают этот метод проверки простых переменных, и это наиболее простой способ сделать это.

Для пользователей Code::Blocks

Рисунок 2 Включение вычисления выражения под курсором при отладке в Code::Blocks

Рисунок 2 – Включение вычисления выражения под курсором при отладке в Code::Blocks

Наведите курсор мыши на переменную x в строке 6, и вы должны увидеть что-то вроде этого:

Рисунок 3 Отображение значения переменной x

Рисунок 3 – Отображение значения переменной x

Обратите внимание, что вы можете навести курсор на переменную x в любом месте, а не только в текущей строке. Например, если мы наведем курсор на x в строке 12, мы увидим то же значение:

Рисунок 4 Отображение значения переменной x при наведении на нее курсора в любом месте

Рисунок 4 – Отображение значения переменной x при наведении на нее курсора в любом месте

Если вы используете Visual Studio, вы также можете использовать Быструю проверку (QuickWatch). Выделите имя переменной x с помощью мыши, а затем выберите Быстрая проверка (QuickWatch) из контекстного меню.

Рисунок 5 Меню вызова окна быстрой проверки значения переменой в Visual Studio

Рисунок 5 – Меню вызова окна быстрой проверки значения переменой в Visual Studio

Это вызовет окно, содержащее текущее значение переменной:

Рисунок 6 Окно быстрой проверки значения переменой в Visual Studio

Рисунок 6 – Окно быстрой проверки значения переменой в Visual Studio

Закройте окно быстрой проверки, если вы его открыли.

Теперь давайте посмотрим, как изменяется эта переменная по мере выполнения программы. Либо выполните два шага, либо выполнение до курсора на строке 9. Переменная x теперь должна иметь значение 3. Проверьте ее и убедитесь, что это так!

Рисунок 7 Отображение измененного значения переменной x

Рисунок 7 – Отображение измененного значения переменной x

Окно просмотра

Использование методов с наведением курсора или окна быстрой проверки для отслеживания переменных – это нормально, если вы хотите узнать значение переменной в определенный момент времени, но это не особенно хорошо подходит для наблюдения за изменением значения переменной при запуске кода, потому что вам постоянно приходится повторно выбирать / наводить курсор на переменную.

Чтобы решить эту проблему, все современные встроенные отладчики предоставляют еще одну функцию, называемую окном просмотра. Окно просмотра (watch window) – это окно, в котором вы можете добавлять переменные, которые вы хотели бы постоянно отслеживать, и эти переменные будут в нем обновляться по мере выполнения вашей программы. Окно просмотра может уже быть на вашем экране, когда вы входите в режим отладки, но если это не так, вы можете вызвать его с помощью команд управления окнами IDE (обычно они находятся в меню View (Вид) или Debug (Отладка)).

Для пользователей Visual Studio

В Visual Studio меню просмотра можно найти в меню Отладка (Debug) → Окна (Windows) → Контрольные значения (Watch) → Контрольные значения 1 (Watch 1). Обратите внимание, что для включения этой опции вы должны находиться в режиме отладки, поэтому сначала запустите свою программу.

Расположение этого окна (закреплено слева, справа или снизу) может отличаться. Вы можете изменить место закрепления, перетащив вкладку Контрольные значения на другую сторону окна приложения.

Для пользователей Code::Blocks

В Code::Blocks меню просмотра можно найти в меню Debug (Отладка) → Debugging windows (Окна отладки) → Watches (Просмотр). Это окно, скорее всего, появится отдельно. Вы можете закрепить его в главном окне, перетащив его.

Теперь вы должны увидеть что-то вроде этого:

Рисунок 8 Окно отслеживания значений переменных

Рисунок 8 – Окно отслеживания значений переменных

Окно просмотра может уже содержать или не содержать что-либо.

Обычно есть два разных способа добавить переменные в окно просмотра:

Если вы еще не находитесь в сеансе отладки с маркером выполнения в строке 9 вашей программы, запустите новый сеанс отладки и запустите выполнение до курсора на строке 9.

Рисунок 9 Значение переменной x в окне отслеживания

Рисунок 9 – Значение переменной x в окне отслеживания

Теперь сделайте два шага с обходом или запустите выполнение до курсора на строке 12, и вы увидите, что значение x изменилось с 3 на 6.

Использование окна просмотра – лучший способ наблюдать за изменением значения переменной с течением времени по мере выполнения программы.

Окно просмотра также может вычислять выражения

Окно просмотра также позволяет вам вычислять простые выражения. Если вы еще этого не сделали, запустите выполнение до курсора на строке 12. Затем попробуйте ввести x + 2 в окно просмотра и посмотрите, что произойдет (результат должен быть равен 8).

Вы также можете выделить выражение в своем коде, а затем проверить значение этого выражения, наведя курсор мыши или добавив его в окно просмотра через контекстное меню, вызываемое правой кнопкой мыши.

Предупреждение

Идентификаторы в отслеживаемых выражениях будут вычислять свои текущие значения. Если вы хотите знать, какое значение на самом деле вычисляет выражение в вашем коде, сначала запустите выполнение до курсора к нему, чтобы все идентификаторы имели правильные значения.

Отслеживание локальных переменных

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

Для пользователей Visual Studio

В Visual Studio вы можете увидеть значение всех локальных переменных в окне Локальные (Locals), которое можно найти в меню Отладка (Debug) → Окна (Windows) → Локальные (Locals). Обратите внимание, что вы должны находиться в сеансе отладки, чтобы активировать это окно.

Для пользователей Code::Blocks

В Code::Blocks это интегрировано в окно Watch (Просмотр) в узле Locals (Локальные переменные). Если вы их не видите, значит, их либо нет, либо вам нужно развернуть узел.

Если вы просто хотите посмотреть значение локальной переменной, сначала проверьте окно локальных переменных. Она уже должна быть там.

Список и описание переменных Visual C++ в Microsoft Visual Studio

Правильная настройка переменных среды Visual C++ в Microsoft Visual Studio является одним из основных условий успешной работы компилятора Visual C++.

Список и описание переменных Visual C++

Ниже перечислен список системных переменных используемых при построении и компиляции проектов Visual C++ в Microsoft Visual Studio.

VSInstallDir

Каталог, в который установлен Visual Studio. Например: D:\Program\VS2008\ или C:\Program Files\Microsoft Visual Studio 9.0\ . Путь должен содержать завершающий слеш " \ "! Данная переменная отсутствует по умолчанию! Могут присутствовать каталоги C:\Program Files\Microsoft Visual Studio , C:\Program Files\Microsoft Visual Studio 8 и C:\Program Files\Microsoft Visual Studio 9.0 - правильный путь можно найти в системной переменной типа %VS90COMNTOOLS% .

VCInstallDir

Каталог, в который установлен Visual C++. Например: D:\Program\VS2008\VC\ или C:\Program Files\Microsoft Visual Studio 9.0\VC\ . Путь должен содержать завершающий слеш " \ "! Данная переменная отсутствует по умолчанию!

FrameworkDir

Каталог, в который установлены платформы .NET Framework (v1.1.4322, v2.0.50727 и т.д.). Иногда используется совместно с переменной FrameworkVersion. Полный путь можно найти в ветке реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\ , в строковом параметре InstallRoot, обычно это C:\WINDOWS\Microsoft.NET\Framework\ . Путь должен содержать завершающий слеш " \ "! Данная переменная отсутствует по умолчанию!

FrameworkVersion

FrameworkSDKDir

WindowsSdkDir

Путь к каталогу Windows SDK , например: C:\Program Files\Microsoft SDKs\Windows\v6.0A . Обычно полный путь для WindowsSdkDir можно найти в параметре CurrentInstallFolder ветки реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows . Если установлен пакет Windows SDK for Windows Server 2008 and .NET Framework 3.5, то переменные FrameworkSDKDir и WindowsSdkDir могут содержать один и тот же путь к этому пакету, например: C:\Program Files\Microsoft SDKs\Windows\v6.0A . Путь НЕ должен содержать завершающий слеш " \ "! Данная переменная отсутствует по умолчанию!

ProgramFiles

Стандартная системная переменная.

SystemRoot

Стандартная системная переменная.

FxCopDir

Путь к fxcop.cmd файлу. Fxcop.cmd файл устанавливается не со всеми изданиями Visual C++. Using FxCopCmd, Quick Start Guide to FxCopCmd.

Стандартная системная переменная.

Умолчания для Параметры -> Проекты и решения -> Каталоги VC++

Исполняемые файлы (путь, который нужно использовать при поиске исполняемых файлов при построении проекта VC++. Соответствует переменной окружения PATH.):

  • $(VCInstallDir)bin
  • $(WindowsSdkDir)\bin
  • $(VSInstallDir)Common7\Tools\bin
  • $(VSInstallDir)Common7\tools
  • $(VSInstallDir)Common7\ide
  • $(ProgramFiles)\HTML Help Workshop
  • $(FrameworkSDKDir)bin
  • $(FrameworkDir)$(FrameworkVersion)
  • $(VSInstallDir)
  • $(SystemRoot)\SysWow64
  • $(FxCopDir)
  • $(PATH)

Включаемые файлы (пути которые нужно использовать при поиске включаемых файлов при построении проекта VC++. Соответствует переменной окружения INCLUDE.):

  • $(VCInstallDir)include
  • $(VCInstallDir)atlmfc\include
  • $(WindowsSdkDir)\include
  • $(FrameworkSDKDir)include
  • $(FrameworkDir)$(FrameworkVersion)
  • $(VCInstallDir)atlmfc\lib
  • $(VCInstallDir)lib

Файлы библиотек (пути которые нужно использовать при поиске библиотечных файлов при построении проекта VC++. Соответствует переменной окружения LIB.):

  • $(VCInstallDir)lib
  • $(VCInstallDir)atlmfc\lib
  • $(VCInstallDir)atlmfc\lib\i386
  • $(WindowsSdkDir)\lib
  • $(FrameworkSDKDir)lib
  • $(VSInstallDir)
  • $(VSInstallDir)lib

Файлы исходного кода (пути, которые используются при поиске файлов исходного кода, нужных для работы IntelliSense):

  • $(VCInstallDir)atlmfc\src\mfc
  • $(VCInstallDir)atlmfc\src\mfcm
  • $(VCInstallDir)atlmfc\src\atl
  • $(VCInstallDir)crt\src

Исключаемые каталоги (пути, которые нужно пропустить при поиске зависимостей):

  • $(VCInstallDir)include
  • $(VCInstallDir)atlmfc\include
  • $(WindowsSdkDir)\include
  • $(FrameworkSDKDir)include
  • $(FrameworkDir)$(FrameworkVersion)
  • $(VCInstallDir)atlmfc\lib
  • $(VCInstallDir)lib

Вы можете дополнительно создавать свои пользовательские или системные переменные и использовать их в своих проектах/настройках Visual C++ в Microsoft Visual Studio.

ВНИМАНИЕ! Там где указывается " Соответствует переменной окружения . ", имеется ввиду не полное соответствие этой переменной окружения, а дополнительный поиск в этой переменной окружения помимо указанных путей.

Приведённый выше список и описание переменных Visual C++ применим к Microsoft Visual Studio 2008, а также может соответствовать списку и описанию переменных Visual C++ в других версиях Microsoft Visual Studio.

Рекомендуемый контент

Вы не любите рекламу!? Напрасно!:) На нашем сайте она вовсе ненавязчивая, а потому для нашего сайта можете полностью отключить AdBlock (uBlock/uBlock Origin/NoScript) и прочие блокировщики рекламы! AdBlock/uBlock может препятствовать нормальной работе системы поиска по сайту, отображению рекомендуемого контента и прочих сервисов Google. Рекомендуем полностью отключить блокировщик рекламы и скриптов, а также разрешить фреймы (aka iframe).

АдМинь БагоИскатель ярый борец за безглючную работу любых механизмов и организмов во всей вселенной и потому пребывает в вечном поиске всяческих багов, а тот кто ищет как известно всегда находит. Когда что-то или кого-то вылечить не в состоянии, то со словами "Я в аду, а вы все черти" уходит в запой выйдя из которого снова берётся лечить неизлечимое.

Добавить комментарий

АХТУНГ! Все комменты модерасятся модерастом. Мессаги исключительно рекламного или оскорбительного содержания, оценочные суждения типа "круто" ("отлично", "спасибо", "автор дебил" и т.п.) не публикуются, а поэтому злостным спамерам, пранкерам и прочей сетевой нечисти рекомендуем напрасно не тратить своего времени и удовлетворять свои больные фантазии на специализированных Интернет ресурсах! Разумная критика, замечания, дополнения приветствуются. Поля помеченные символом * обязательны к заполнению.

:wall: ЗА ЧТО ТОЛЬКО ПРЕДКИ СТРАДАЛИ, ВОЕВАЛИ, КРОВЬ ПРОЛИВАЛИ!? :ganba: Чтобы их наследники тряпочно-ушаноч ные бараны так всё взяли и тупо просрали?

Можно было бы и до 200-210 понизить, но данная модель "Back-UPS ES 525" не поддерживает фичу "Set EEPROM with conf file values" увы.

"OUTPUTVOLTS" бы ещё понизить до 220, нафига батарею напрягать на "NOMOUTV: 230 Volts", когда их в сети почти никогда нет

Читайте также: