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

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

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

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

13.02.2013, 20:52. Просмотров 456. Ответов 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?

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

Указатели и указатели на указатели, а также типы данных - C++
Недавно начал изучать Си, перешел с Delphi. Много непонятного и пока процесс идет медленно. Накачал литературы, буду изучать) Щас...

Через указатели на указатели посчитать сумму двух чисел и записать в третье - C++
1. Через указатели на указатели посчитать сумму двух чисел и записать в третье. 2. Написать примитивный калькулятор, пользуясь только...

Есть три переменные. Используя указатели на указатели, поменять значение максимальной и минимальной переменной - C++
Мой код. #include <iostream> #include <stdlib.h> #include<iomanip> using namespace std; void min_max(int*pa, int*pb,...

Указатели на указатели с числами. Почему можно присвоить число в 4-ый элемент, если массив из 2 элементов? - C++
Есть массив int **mas; mas=new int*; // выделил место под пять строк, верно ? mas=new int;// выделил для первой строки матрицы два...

Отсортировать массив и вывести на экран (массивы и указатели на указатели) - C++
Даны массивы F-фамилий студентов и S-результаты сессии (5 оценок) , причем s- результат сессии F студента. Отсортировать массив S по...

Указатели на слонов или А зачем нужны указатели? - C++
Знаю что таких вопросов было уйма, но я так и не нашел ответа на свой вопрос. Для чего нужны указатели? Что такое указатели я знаю, это...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Эксперт CЭксперт С++
13205 / 7476 / 839
Регистрация: 27.09.2012
Сообщений: 18,374
Записей в блоге: 3
Завершенные тесты: 1
13.02.2013, 21:09 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от unipharma Посмотреть сообщение
sizeof (char)
1
Цитата Сообщение от unipharma Посмотреть сообщение
sizeof (char *)
зависит от платформы

Цитата Сообщение от unipharma Посмотреть сообщение
p1 = p2и * p1 = * p2
1 - адреса
2 - значения
1
unipharma
0 / 0 / 0
Регистрация: 10.11.2012
Сообщений: 54
13.02.2013, 21:17  [ТС] #3
всмысле зависит от платформы?
0
Croessmah
Эксперт CЭксперт С++
13205 / 7476 / 839
Регистрация: 27.09.2012
Сообщений: 18,374
Записей в блоге: 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
0
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?
А проверить никак? В С++ нельзя. В Си можно.
0
ValeryS
Модератор
6631 / 5039 / 466
Регистрация: 14.02.2011
Сообщений: 16,845
13.02.2013, 22:01 #6
Цитата Сообщение от go Посмотреть сообщение
Я думаю, что стоит упаменуть диапазон допустимых значений.
ну и каких
для микроконтролеров 1 байт(не у всех)
16 битные ОС 2 байта(там еще есть короткие и длинные)
32 битные 4 байта
64 битные 8 байт
а никто не запрещал сделать другие ОС с другими значениями
0
Toshkarik
1141 / 858 / 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.
0
Croessmah
13.02.2013, 22:10
  #8

Не по теме:

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

0
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, нет желания спорить.
0
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
13.02.2013, 22:16 #10
а что с ними играть то. указатели на методы и мемберы не такие как указатели на объекты.
0
Toshkarik
1141 / 858 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
13.02.2013, 22:17 #11
Croessmah, go
указатель на функцию совсем по другому устроен. Я в курсе, что размер может достигать до 3 обычных указателей. Здесь идет речь об указателях на объекты, а не на функции.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2013, 22:17
Привет! Вот еще темы с ответами:

Написать программу сортировки через указатели на указатели - C++
Вот моя программа #include <iostream> #include <conio.h> #include <string> using namespace std; //Сортировка "пузырьком". ...

Используются ли на практике указатели на указатели объектов? - C++
Имеются ввиду указатели именно на объекты, а не динамические массивы. Например такой: Object** obj; А как насчёт такого: Object***...

Указатели и массивы. Указатели и функции - C++
Никак не разберусь с указателями на функцию. Пишу в Visual Studio. Надо написать функцию Compress() с использованием указателей, которая...

Константные указатели и указатели на константу - C++
Чем они, собственно говоря, отличаются? Поясните, пожалуйста. Не знаю, как так получилось, что в разных источниках - разные...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
13.02.2013, 22:17
Ответ Создать тему
Опции темы

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