|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
25.09.2012, 07:52 | #1 | ||
Пользователь
Регистрация: 14.12.2011
Сообщений: 10
|
Массив указателей
Здравствуйте, объясните пожалуйста разницу
Цитата:
Цитата:
|
||
25.09.2012, 08:55 | #2 |
Старожил
Регистрация: 19.08.2009
Сообщений: 2,119
|
CaXaH
Здравствуйте, объясните пожалуйста разницу первое - массив из 4х указателей на const char, второе - массив из 2х указателей на const int разница - в размере массивов и типах элементов Почему второй вариант не верный? ну наверное потому, что ты пытаешься неявно привести число к указателю.
А вы почему со мной не соглашаетесь, у вас что, импотенция? (c) ACE Valery
|
25.09.2012, 09:07 | #3 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
|
25.09.2012, 09:17 | #4 | |
Пользователь
Регистрация: 14.12.2011
Сообщений: 10
|
Цитата:
|
|
25.09.2012, 09:20 | #5 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
А чего Вы хотели добиться данной строчкой? Или просто составляете программы методом перебора возможных комбинаций?
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
25.09.2012, 09:21 | #6 |
Старожил
Регистрация: 19.08.2009
Сообщений: 2,119
|
Он не компилируется, подкиньте хорошей литературы по массивы указателей не могу разобраться в них.
http://bit.ly/Si3F4s
А вы почему со мной не соглашаетесь, у вас что, импотенция? (c) ACE Valery
|
25.09.2012, 09:58 | #7 | |
Пользователь
Регистрация: 14.12.2011
Сообщений: 10
|
Цитата:
Вот смотрите: static int *p[2]; *p[1]=0; можно так инициализировать. А как инициализировать тогда при объявлении? Последний раз редактировалось CaXaH; 25.09.2012 в 10:13. |
|
25.09.2012, 10:30 | #8 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Ну мы же не телепаты, чего Вы там навертели. Покажите весь код. Да и сам текст ошибки не привели. Может у Вас р уже объявлена, нам откуда знать?
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
25.09.2012, 10:41 | #9 | ||
Пользователь
Регистрация: 14.12.2011
Сообщений: 10
|
Цитата:
ну вот Вам полный. Цитата:
|
||
25.09.2012, 10:42 | #10 | |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,690
|
строки в C++, например "piki", по умолчанию имеют тип const char*. И еще, концом строки считается символ '\0' или просто 0, поэтому к строке "piki" неявно прибавляется еще один символ и получается "piki\0".
Массивы в C++/C по умолчанию являются указателями и поэтому не нужно указывать & для получения адреса. Код:
static const int p[2]={1,1}; или если вы хотели 2х мерный массив размером 2x1 static const int p[2][1]={{1},{1}}; или 2x2 static const int p[2][2]={{1,3},{1,-5}}; в случае 2х мерного массив, p имеет тип const int **. Указатель на указатель. А квадратные скобочки выполняют поочередное разыменование. Т.е. когда мы пишем p[0], то получаем указатель(адрес) на нулевую(первую) строку двухмерного массива, а когда пишем p[0][0], то получаем первое значение по первому указателю, т.е. применяется второе разыменование и получаем const int. Более подробно читай в книге в главе про указатели. Цитата:
Последний раз редактировалось Kostia; 25.09.2012 в 10:46. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Массив указателей | nattaella | Компоненты Delphi | 2 | 11.06.2011 16:40 |
Указатель на массив указателей на массив char'ов... | SrgGld | Общие вопросы C/C++ | 0 | 19.11.2010 23:35 |
Массив указателей | askar | Общие вопросы C/C++ | 5 | 07.09.2010 23:11 |
массив указателей | RUSt88 | Общие вопросы C/C++ | 12 | 10.01.2010 11:11 |
массив указателей в С ++ | серг | Помощь студентам | 1 | 14.12.2009 18:49 |