Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
unipharma
0 / 0 / 0
Регистрация: 10.11.2012
Сообщений: 54
#1

Указатели - C++

13.02.2013, 20:52. Просмотров 449. Ответов 10
Метки нет (Все метки)

1) Предположим, что p - указатель, установленный на целую переменную со значением 3. Что можно сказать о значении выражений p, * p, & p, * & p и & * p?

2) Чему равны sizeof (char) и sizeof (char *)?

3)Предположим, что p1 и p2 - указатели типа int *. В чем разница между присвоении p1 = p2и * p1 = * p2? Ли допустимыми присваивания * p1 = p2, p1 = * p2, p1 = & p2?

Спасибо еще раз
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2013, 20:52     Указатели
Посмотрите здесь:

Указатели в c++ - C++
Задача: Дан текст, заканчивающийся точкой. Напечатать этот текст, удалив из него все цифры и знаки «+» или «–». Попробовала написать...

Указатели - C++
Что происходит в данном случае? for (unsigned int i = 0; i < n; i++) p_array.entry_pt = NULL; for (unsigned int...

Указатели - C++
Написать программу на языке C Задание: введите с клавиатуры 3 числа и выведите их на экран в порядке возрастания. Программу написать с...

Указатели - C++
С одномерным массивом, состоящим из n вещественных элементов, вы-полнить следующее: Преобразовать массив таким образом, чтобы сначала...

Указатели - C++
Что это означает? while(*p), if(*p) это типа проверка есть ли у указателя значение? или что-то другое?

Указатели в Си - C++
Добрый вечер! Почему MinGW ругается при объявлении: char *str = {"Hello", " World!"}; Объясните пожалуйста, как со строковыми...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
12979 / 7291 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
13.02.2013, 21:09     Указатели #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от unipharma Посмотреть сообщение
sizeof (char)
1
Цитата Сообщение от unipharma Посмотреть сообщение
sizeof (char *)
зависит от платформы

Цитата Сообщение от unipharma Посмотреть сообщение
p1 = p2и * p1 = * p2
1 - адреса
2 - значения
unipharma
0 / 0 / 0
Регистрация: 10.11.2012
Сообщений: 54
13.02.2013, 21:17  [ТС]     Указатели #3
всмысле зависит от платформы?
Croessmah
Модератор
Эксперт CЭксперт С++
12979 / 7291 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
13.02.2013, 21:20     Указатели #4
Цитата Сообщение от unipharma Посмотреть сообщение
всмысле зависит от платформы?
Pointers
the size in memory of a pointer depends on the platform where the code is going to run
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
13.02.2013, 21:59     Указатели #5
Цитата Сообщение от unipharma Посмотреть сообщение
всмысле зависит от платформы?
В прямом.
Цитата Сообщение от Croessmah Посмотреть сообщение
зависит от платформы
Я думаю, что стоит упаменуть диапазон допустимых значений.

Добавлено через 5 минут
Цитата Сообщение от unipharma Посмотреть сообщение
* p1 = p2, p1 = * p2, p1 = & p2?
А проверить никак? В С++ нельзя. В Си можно.
ValeryS
Модератор
6539 / 5005 / 461
Регистрация: 14.02.2011
Сообщений: 16,648
13.02.2013, 22:01     Указатели #6
Цитата Сообщение от go Посмотреть сообщение
Я думаю, что стоит упаменуть диапазон допустимых значений.
ну и каких
для микроконтролеров 1 байт(не у всех)
16 битные ОС 2 байта(там еще есть короткие и длинные)
32 битные 4 байта
64 битные 8 байт
а никто не запрещал сделать другие ОС с другими значениями
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
13.02.2013, 22:01     Указатели #7
Цитата Сообщение от unipharma Посмотреть сообщение
sizeof (char)
По стандарту, всегда равно 1.

Цитата Сообщение от unipharma Посмотреть сообщение
sizeof (char *)
На 32 битных системах с x86 процессорами будет равно 4, на 64 битных будет равно 8.
Croessmah
13.02.2013, 22:10
  #8

Не по теме:

Цитата Сообщение от Toshkarik Посмотреть сообщение
На 32 битных системах с x86 процессорами будет равно 4
Попробуйте поиграться с указателем на методы производных классов с виртуальным наследованием на x32 архитектуре и на разных компиляторах.

go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
13.02.2013, 22:16     Указатели #9
Цитата Сообщение от Toshkarik Посмотреть сообщение
На 32 битных системах с x86 процессорами будет равно 4, на 64 битных будет равно 8.
Почитайте http://www.quizful.net/post/pointers-size


ValeryS, нет желания спорить.
DU
1480 / 1056 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
13.02.2013, 22:16     Указатели #10
а что с ними играть то. указатели на методы и мемберы не такие как указатели на объекты.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2013, 22:17     Указатели
Еще ссылки по теме:

Указатели - C++
4.Создать указатель на указатель и вывести на экран Адрес в ОП этого указателя Значение этого указателя - как ??? Сделал вот...

Указатели. - C++
Как написать эту программу через указатели??? #include <stdio.h> #include <conio.h> int main() { int a; int b; ...

Указатели - C++
Используя вместо самой переменной указатель на нее написать программу в соответствии с заданием (выполнение задания оформить...

Указатели - C++
Есть указатель на адрес max. Как привоить переменной, находящейся по этому адресу значение min1?


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

Или воспользуйтесь поиском по форуму:
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
13.02.2013, 22:17     Указатели #11
Croessmah, go
указатель на функцию совсем по другому устроен. Я в курсе, что размер может достигать до 3 обычных указателей. Здесь идет речь об указателях на объекты, а не на функции.
Yandex
Объявления
13.02.2013, 22:17     Указатели
Ответ Создать тему
Опции темы

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