Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.75
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
#1

объясните код - C++

13.02.2010, 16:23. Просмотров 2691. Ответов 52
Метки нет (Все метки)

не понятно что означает это
C++
1
2
int*pointer;
pointer=new int
Добавлено через 1 минуту
я как понял это обычный указатель где хранится адрес только на этот раз дин.память?

Добавлено через 3 минуты
хмм...
C++
1
2
new *pointer=int a;//создается указатель на А
delete poiner;//а удаляется из памяти?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2010, 16:23
Я подобрал для вас темы с готовыми решениями и ответами на вопрос объясните код (C++):

Объясните код
Есть задача из книги. Я думаю условие, в данной ситуации, скидывать не надо. ...

Объясните код
как работает этот код? опишите, пожалуйста void Comb(int m, int l) { if...

Объясните код
Объясните, пожалуйста, как работает функция Find и для чего там if (str&&fnd)...

Объясните код
Если честно я не знаю как написать программу, пожалуйста помогите. Опишите код...

Объясните код
#include <iostream.h> #include <string> int main() { const std::string...

Объясните код
Пожалуйста объясните что да как в этом коде #define MAXLEN sizeof(int) *...

52
cibertronic
256 / 143 / 17
Регистрация: 27.12.2009
Сообщений: 908
13.02.2010, 16:47 #2
Цитата Сообщение от МедведЪ Посмотреть сообщение
delete poiner;//а удаляется из памяти?
можеш не писать,но глюк при повторе кода без закрытия возможен))
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
13.02.2010, 16:50  [ТС] #3
cibertronic, значит эт так?
0
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
13.02.2010, 16:53 #4
Цитата Сообщение от МедведЪ Посмотреть сообщение
new *pointer=int a;//создается указатель на А
откуда такая интересная запись)
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
13.02.2010, 16:58  [ТС] #5
kazak, из книжки
0
cibertronic
256 / 143 / 17
Регистрация: 27.12.2009
Сообщений: 908
13.02.2010, 17:00 #6
да был гдето интересный пример, но найти не могу....слишком дофига исходников))) причем больинство корявых...найду, скину

Добавлено через 1 минуту
автора скажешь?
0
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
13.02.2010, 17:02 #7
Цитата Сообщение от МедведЪ Посмотреть сообщение
kazak, из книжки
Не знаю как у автора этой книжки, а у меня ни мой мозг, ни компилятор такуюю конструкцию не воспринимают.)
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
13.02.2010, 17:04  [ТС] #8
С++ за 21 день...
Цитата Сообщение от cibertronic Посмотреть сообщение
да был гдето интересный пример, но найти не могу....слишком дофига исходников))) причем больинство корявых...найду, скину
а как на счет сам писать

Добавлено через 1 минуту
kazak, убиваюсь уже яя иупые книги!!!

Не по теме:


посоветуй пожалуйста нормальную книгу для меня...

0
kazak
3057 / 2378 / 255
Регистрация: 11.03.2009
Сообщений: 5,438
Завершенные тесты: 1
13.02.2010, 17:08 #9
Может автор имел в виду такой пример?
C++
1
2
3
int a;
int *pointer;
pointer = &a;
0
easybudda
Модератор
Эксперт CЭксперт С++
10021 / 5944 / 1483
Регистрация: 25.07.2009
Сообщений: 11,230
13.02.2010, 17:09 #10
МедведЪ,
C++
1
2
3
4
5
6
7
8
9
int *pointer; // объявление переменной, значением которой может быть адрес ячейки памяти
// достаточной для хранения переменной типа int
pointer = new int; // резервирование этой самой ячейки и присвоение её адреса
// переменной pointer
*pointer = 10; // ячейка памяти, адрес которой хранится в pointer, 
//теперь содержит число 10
delete pointer; // освобождение памяти. Больше эта ячейка не доступна
cout << *pointer; // ошибка! После того, как память была возвращена
// системе, больше этим значением указателя пользоваться нельзя.
1
Knightt
5 / 5 / 2
Регистрация: 09.02.2010
Сообщений: 11
13.02.2010, 17:24 #11
я так понимаю, что указатель на А ( типа int), будет выглядеть так
C++
1
2
int A;
int * ptr = &A;
0
Genius Ignat
1241 / 779 / 108
Регистрация: 16.09.2009
Сообщений: 2,014
13.02.2010, 17:27 #12
Knightt:
Правильно понимаешь.
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
13.02.2010, 18:25  [ТС] #13
C++
1
2
3
4
int *p=0;
*p=new int;
*p=222222;
cout<<p;
как смотреть адрес переменной П?
0
PointsEqual
ниначмуроФ
838 / 522 / 110
Регистрация: 12.10.2009
Сообщений: 1,915
13.02.2010, 18:39 #14
C++
1
cout<<p;
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
13.02.2010, 18:43  [ТС] #15
PointsEqual, почему я если так ввожу пишет только цифры а если
Cout<<&p; то цифры и буквы....

Добавлено через 37 секунд
PointsEqual, мне нужен адрес
Цитата Сообщение от МедведЪ Посмотреть сообщение
222222;
этого
0
easybudda
Модератор
Эксперт CЭксперт С++
10021 / 5944 / 1483
Регистрация: 25.07.2009
Сообщений: 11,230
13.02.2010, 18:43 #16
МедведЪ, да вот как-раз так, как ты и написал
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
 
int main(){
    int *p = new int;
    *p = 22222;
    std::cout << "Value: " << *p << "\tAddress: " << p << std::endl;
    delete p;
    return 0;
}
Вывод:
Код
$ ./val_and_addr 
Value: 22222	Address: 0x8a46008
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
13.02.2010, 18:51  [ТС] #17
easybudda, ладно...теперь если не написать delete то 22222 будет в памяти да?даже после закрытии проги....так?

Добавлено через 3 минуты
а как сделать чтобы прочесть значение из адреса которого ввожу....
C++
1
2
3
int *p=new int;
*p=&00035518;//здесь цифра 22222
cout<<p;
0
PointsEqual
ниначмуроФ
838 / 522 / 110
Регистрация: 12.10.2009
Сообщений: 1,915
13.02.2010, 19:03 #18
C++
1
cout<<*p;
Добавлено через 28 секунд
Цитата Сообщение от PointsEqual Посмотреть сообщение
C++
1
cout<<*p;
рызыменовывание

Добавлено через 5 минут
на 207 странице говорится- указатель- это переменная, хранящая адрес, значит p-адресс а *p-значение хранящееся по адресу p
0
SunDrop
389 / 229 / 11
Регистрация: 09.12.2009
Сообщений: 668
13.02.2010, 19:09 #19
Цитата Сообщение от kazak Посмотреть сообщение
Не знаю как у автора этой книжки, а у меня ни мой мозг, ни компилятор такуюю конструкцию не воспринимают.)
Аналогично...
0
PointsEqual
ниначмуроФ
838 / 522 / 110
Регистрация: 12.10.2009
Сообщений: 1,915
13.02.2010, 19:19 #20
Цитата Сообщение от МедведЪ Посмотреть сообщение
new *pointer=int a;//создается указатель на А
может я слепой, но не мог бы ты написать страницу с етой записью а то я такой строчки найти не могу.
0
13.02.2010, 19:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2010, 19:19
Привет! Вот еще темы с решениями:

Объясните код
Объясните, как работают перегрузки оператора = и функций Union ..а точнее...

Объясните код
template &lt;std::size_t M, std::size_t N, typename TupleSum, typename Tuple,...

Объясните код
Добрый день. Закомментируйте код программы пожалуйста. Не могу разобраться в...

Объясните код
Всем доброго времени суток. Я начинающий джава, но в связи с сложившейся...


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

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

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