Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.11.2012
Сообщений: 18
1

Выделение памяти под указатель

19.11.2013, 20:12. Показов 758. Ответов 7
Метки нет (Все метки)

Здравствуйте форумчане,у меня возник маленький вопрос
Почему
C++
1
sizeof(char)
дает результат в 1 байт, а
C++
1
sizeof(char*) )
дает 4 байта.Как я понимаю под указатель всегда выделяется 4 байта независимо от типа?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.11.2013, 20:12
Ответы с готовыми решениями:

Выделение памяти под указатель
Здравствуйте! Есть следующий код. Я разбиваю строку на слова и слова заданной длины пытаюсь...

Выделение памяти под указатель
Доброго времени суток. Возник такой вопрос: для любой программы, насколько мне известно, выделяется...

Указатель, выделение памяти под него
подскажите: int *var; *var = 1; и int *var = new int(1); эти 2 разные записи делают одно и...

Указатель. Динамическое выделение памяти
На мое мнение должно работать, но что-то не так.Помогите разобраться буду очень благодарен. int...

7
Почетный модератор
Эксперт С++
5843 / 2852 / 390
Регистрация: 01.11.2011
Сообщений: 6,903
19.11.2013, 20:22 2
Именно так.
1
0 / 0 / 0
Регистрация: 26.11.2012
Сообщений: 18
19.11.2013, 20:27  [ТС] 3
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Именно так.
Благодарю
0
шКодер самоучка
2133 / 1847 / 904
Регистрация: 09.10.2013
Сообщений: 4,040
Записей в блоге: 7
19.11.2013, 20:30 4
указатель занимает 8 байт для 64хбитного приложения и 4 для 32 бит
0
Эксперт C
25705 / 16055 / 3441
Регистрация: 24.12.2010
Сообщений: 35,128
19.11.2013, 20:30 5
Цитата Сообщение от mr_Eugene Посмотреть сообщение
sizeof(char)
Только char - это не указатель.
А вот sizeof(double) = 8 - не удивляет?
ЗЫ. В 16-32 битовых, но суть не в этом...
0
5480 / 4875 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
19.11.2013, 20:30 6
В указателе - адрес. Разрядность (размер) адреса, в 32-х битном проекте, 32 бита (4 байта).
0
Почетный модератор
Эксперт С++
5843 / 2852 / 390
Регистрация: 01.11.2011
Сообщений: 6,903
19.11.2013, 20:55 7
Ну что вы набежали. Я не успел картинку дорисовать. Х)

Выделение памяти под указатель


*pchar должен не содержать в себе один char, а должен содержать в себе его адрес. Следовательно его размер будет зависеть от разрядности системы.
1
0 / 0 / 0
Регистрация: 26.11.2012
Сообщений: 18
19.11.2013, 22:05  [ТС] 8
Всем спасибоРазобрался
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.11.2013, 22:05

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Указатель на Класс_1 в Классе_2 (динамическое выделение памяти)
Как фиксануть ошибку? Может не правильно как-то вызываю? GetDifference не менять, она должна...

Выделение памяти под массив
в массиве данных хранять в последовательных ячейках памяти В программе, выделенна память под...

Выделение памяти под масссив
Как занести данные в двумерный массив с клавиатуры? пользователь должен сам ввести размерность

Выделение памяти под файл
Всем доброго времени суток. Написал некоторую структуру, работают все пунктики, все функции, но...


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

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

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