Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
fuelcs
12 / 12 / 2
Регистрация: 23.01.2013
Сообщений: 143
1

Инициализация указателя

25.02.2013, 01:06. Просмотров 441. Ответов 3
Метки нет (Все метки)

Написал такой код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
using namespace std;
 
int main()
{   
    int n=10;
    int* a=new int [n];
 
    cout << a;
 
 
    return 0;
}
записал адрес и вставил:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
using namespace std;
 
int main()
{   
    int* a=(int*)0x002D1DB8;
 
    cout << *a;
 
 
    return 0;
}
Почему программа вылетает?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.02.2013, 01:06
Ответы с готовыми решениями:

инициализация указателя
class Item { public: Item() { num0=new char(&quot;как&quot;);//ошибка cannot...

Инициализация указателя в классе
Есть класс const int NoL = 0; class A{ private: int&amp; IF; A(){IF =...

Инициализация указателя с malloc ?
Я тут прочитал про malloc, верно ли я понял? Есть: char* pszBuffer; ...

Инициализация указателя в функции
не понимаю... main.cpp somestruct *v = 0; int main() { init(v);

Инициализация указателя через функцию
#include &lt;iostream&gt; using namespace std; void inic(int * k); int main() {...

3
OhMyGodSoLong
~ Эврика! ~
1246 / 995 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
25.02.2013, 01:07 2
А вы во второй раз получили у операционной системы разрешение на использование того куска памяти? Нет? Ещё вопросы?
1
fuelcs
12 / 12 / 2
Регистрация: 23.01.2013
Сообщений: 143
25.02.2013, 01:13  [ТС] 3
Цитата Сообщение от ~OhMyGodSoLong~ Посмотреть сообщение
разрешение на использование того куска памяти?
то есть до перезагрузки ни одна программа не сможет использовать этот адрес?
Или все таки можно "получить разрешение"?
0
OhMyGodSoLong
~ Эврика! ~
1246 / 995 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
25.02.2013, 02:14 4
Адреса у каждой программы свои собственные. Это проблемы операционной системы — где именно хранить то, что программа запишет по этим адресам. Разрешение брать у неё же: или с помощью new() — тогда она выдаст первый попавшийся подходящий адрес; или системным вызовом попросить застолбить себе страницы памяти, которым принадлежат нужные адреса (а они моугт оказаться уже занятыми).
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2013, 02:14

Объясните как происходит инициализация данного указателя
Доброе утро. Объясните понятным языком по этапно, как происходит инициализация...

Почему увеличение указателя на sizeof(тип) не тождественно инкременту этого же указателя?
Всем доброго дня.:) Можете обьяснить ,почему при инкриментировании...

Создание указателя на экземпляр класса, описанного после объявления указателя
Здравствуйте! Проблема в том, что нужно сделать так: class A{ public: B*...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru