Вопросы с тегом «local-variables»

20
Можно ли получить доступ к памяти локальной переменной вне ее области?
У меня есть следующий код. #include <iostream> int * foo() { int a = 5; return &a; } int main() { int* p = foo(); std::cout << *p; *p = 8; std::cout << *p; } И код просто выполняется без исключений времени выполнения! Выход был 58 Как это может быть? …

8
Какова область действия переменной, инициализированной в операторе if?
Я новичок в Python, так что это, вероятно, простой вопрос. Следующий код в файле (модуле) Python меня немного смущает: if __name__ == '__main__': x = 1 print x В других языках, на которых я работал, этот код выдает исключение, поскольку xпеременная является локальной для ifоператора и не должна существовать вне …

4
Почему локальные переменные требуют инициализации, а поля - нет?
Если я создаю в своем классе bool, что-то вроде того bool check, по умолчанию он имеет значение false. Когда я создаю такой же bool в своем методе bool check(а не в классе), я получаю сообщение об ошибке «использование неназначенной проверки локальной переменной». Зачем?

2
Как вы извлекаете информацию о локальной переменной (адрес и тип) из программы Delphi или отладочную информацию, созданную компилятором?
Моя цель: Учитывая приостановленный поток в 32- или 64-разрядной программе Windows, скомпилированной с помощью Delphi, пройти по стеку (выполнимо) Учитывая записи стека, для перечисления локальных переменных в каждом методе и их значений. То есть, по крайней мере, найти их адрес и тип (integer32 / 64 / signed / unsigned, string, …

9
«Время жизни» строкового литерала в C
Разве указатель, возвращаемый следующей функцией, не будет недоступен? char *foo(int rc) { switch (rc) { case 1: return("one"); case 2: return("two"); default: return("whatever"); } } Значит, время жизни локальной переменной в C / C ++ находится практически только внутри функции, верно? Это означает, что после char* foo(int)завершения указатель, который он …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.