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

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

Войти
Регистрация
Восстановить пароль
 
maisq
3 / 3 / 0
Регистрация: 13.10.2013
Сообщений: 35
#1

Можно ли получить адрес памяти где хранится буква "a" - C++

23.02.2014, 15:49. Просмотров 297. Ответов 7
Метки нет (Все метки)

Всем привет!
Пожалуйста объясните этот код )
C++
1
2
3
4
char string[] = "abcdef";
cout << string; // будет вывод abcdef
cout << *string; // вот это не понятно,результат  будет буква "a" но почему ?
cout << &string[1]; //и это не понятно результат будет "bcdef"   но почему ?
И еще можно ли получить адрес памяти где хранится буква "a" или др буква?
Всем заранее спасибо!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2014, 15:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Можно ли получить адрес памяти где хранится буква "a" (C++):

Проверить, встрачается ли в заданном тексте буква "а" чаще, чем буква "b" - C++
задача: Напечатать true, если в заданном тексте буква &quot;а&quot; встречается чаще чем буква &quot;b&quot;, и напечатать false в противном случае. Помогите...

Реализовать структуру "Анкета" с полями "Фамилия", "Пол" и "Адрес" - C++
Здравствуйте. Проходим тему Структуры, не могу понять, как определить количество, само задание: #include &lt;iostream&gt; #include...

Сколькими способами можно получить строку "В" из строки "А", вычеркивая некоторые символы - C++
)заданы 2 символьные строки А и Б . Требуется вычислить сколькими способами можно получить строку В из строки А, вычеркивая некоторые...

Ошибка C3374 невозможно получить адрес "void function()" пока не будет создан экземпляр делегата - C++
C++/CLR. Работаю с CURL. Пытаюсь вызвать данную функцию: static size_t write_data(char *ptr, size_t size, size_t nmemb, string* data)...

Ввести с клавиатуры строку, заменить в ней все буква "а" на букву "b" - C++
Здравствуйте) Вот возникла такая проблема.... не умею работать с указателями еще(( Помогите написать задачку: &quot;используя указатели,...

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно" - C++
В зависимости от времени года &quot;весна&quot;, &quot;лето&quot;, &quot;осень&quot;, &quot;зима&quot; определить погоду &quot;тепло&quot;, &quot;жарко&quot;, &quot;холодно&quot;, &quot;очень холодно&quot;. Я так...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zss
Модератор
Эксперт С++
6380 / 5945 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
23.02.2014, 15:55 #2
Имя массива - это адрес его нулевого элемента.
С-но *string - это значение нулевого элемента, т.е. тоже, что и string[0].
string[1] - это следующий(первый элемент),
&string[1] - адрес первого элемента (адрес буквы b), для cout получится строка,
начинающаяся с буквы b.
1
maisq
3 / 3 / 0
Регистрация: 13.10.2013
Сообщений: 35
23.02.2014, 15:57  [ТС] #3
Спасибо за ответ.
А нулевой элемент хранит длину строки?
0
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
23.02.2014, 16:01 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
нет. длина строки определяется специальным нулевым символом в конце строки. маркер такой.
char string[] = "abcdef"; вот это массив из 7 символов. abcdef + 0-символ в конце, который компилятор
сам воткнул.
1
maisq
3 / 3 / 0
Регистрация: 13.10.2013
Сообщений: 35
23.02.2014, 16:04  [ТС] #5
А как сделать вывод адрес например буквы b ?
0
DU
1483 / 1059 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
23.02.2014, 16:10 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
преобразовать к указателю какого-нибудь другого типа. самое логичное - к const void*:
C++
1
cout << static_cast<const void*>(&string[1]);
1
maisq
3 / 3 / 0
Регистрация: 13.10.2013
Сообщений: 35
23.02.2014, 16:11  [ТС] #7
Спасибо!
0
zss
Модератор
Эксперт С++
6380 / 5945 / 1927
Регистрация: 18.12.2011
Сообщений: 15,264
Завершенные тесты: 1
23.02.2014, 16:12 #8
Уже написано.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2014, 16:12
Привет! Вот еще темы с ответами:

Записать из строки все буква "А" "а" в файл - C++
Записать из заданной строки все буквы А а в файл. Плз если можно срочно)) Буду очень благодарен)) Желательно на языке для новичков

Где ошибка невозможно преобразовать указатель "this" из "const pers" в "pers &" при выводе объектов через cout - C++
Добрый день! Переписал код из книг Лафоре, создание мультимножества из собственных объектов- справочник телефонный, с именем и фамилией. ...

В какой области памяти хранится указатель (сама переменная, которая хранит адрес)? - C++
Привет! В общем у меня возник небольшой вопрос :) Если мы объявляем указатель, выделяем ему память, то память выделяется в куче, а адрес...

Из слова "яблоко" путем склеек и вырезок его букв получить слова "блок" и "око" - C++
Самым самым самым простым способом.


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

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

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