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

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

Войти
Регистрация
Восстановить пароль
 
Мария2411
0 / 0 / 0
Регистрация: 11.03.2013
Сообщений: 7
#1

Работа с указателями - C++

14.04.2013, 09:30. Просмотров 338. Ответов 5
Метки нет (Все метки)

Помогите пожалуйста объяснить, не понимаю почему число присваемое через указатель *А в кавычках, и равны ли *А и просто А???
char *A = "123456789";
unsigned B = 1;
char *X = A + B;
char *Y = A - (-B);
Не используя, компилятор дать ответ равны или нет будут значения X и Y. Объяснить свой ответ.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2013, 09:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с указателями (C++):

Работа с указателями - C++
Доброго времени суток, нужна помощь. Данный две задачи, обе работают правильно: Дан целочисленный массив размера N. Преобразовать...

Работа с указателями - C++
Подскажите пожалуйста, зачем написано * Rad_to_deg void show_polar (const polar * pda) { using namespace std; const...

Работа с указателями - C++
Расскажите как работает каждая строка в коде char *A = "123456789"; unsigned B = 1; char *X = A + B; char *Y = A - (-...

Работа с указателями - C++
1. Написать функцию, принимающую в качестве параметра указатель на первый символ строки и возвращающую адрес первого символа этой же...

работа с указателями - C++
небольшая проблемка, никак не могу разобраться с указателями. Я так понял что создавая массив лучше если сразу сдалешь на него указатель и...

работа с указателями - C++
Вспоминаю с++ и в связи с этим возникло несколько вопросов. 1) если сделать так : myobj *obj = new myobj(); то потом можно...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Kastaneda
Форумчанин
Эксперт С++
4652 / 2860 / 228
Регистрация: 12.12.2009
Сообщений: 7,270
Записей в блоге: 2
Завершенные тесты: 1
14.04.2013, 09:45 #2
Цитата Сообщение от Мария2411 Посмотреть сообщение
почему число присваемое через указатель *А в кавычках
потому что это не число, а строка.
Цитата Сообщение от Мария2411 Посмотреть сообщение
равны ли *А и просто А
Нет конечно, *А это строка (точнее ее первый символ), а А это адрес этой строки.

Добавлено через 2 минуты
Цитата Сообщение от Мария2411 Посмотреть сообщение
Объяснить свой ответ.
странная задача, это ж математика не помню какой класс, тут даже программирование знать не надо
Rifle
26 / 26 / 5
Регистрация: 15.11.2012
Сообщений: 93
Завершенные тесты: 4
14.04.2013, 10:01 #3
Не используя, компилятор дать ответ равны или нет будут значения X и Y. Объяснить свой ответ.
Ответы будут: "23456789" на первое и на второе. Чтобы понять, почему так, следует познакомиться с указателями в С++ (как вариант, гугл: "указатели С++"), с арифметикой указателей (аналогично, гугл: "С++ арифметика указателей") и со строками в стиле С++ (гугл: "строки в стиле С++"). В двух словах не объяснишь, если вы еще с указателями и строками не познакомились.

Добавлено через 3 минуты
Сами указатели char* X и char* Y будут указывать в первый элемент строки, т.е. 2.
Kastaneda
Форумчанин
Эксперт С++
4652 / 2860 / 228
Регистрация: 12.12.2009
Сообщений: 7,270
Записей в блоге: 2
Завершенные тесты: 1
14.04.2013, 10:03 #4
У тебя ответ не соответствует поставленному вопросу. Смотрим внимательно вопрос

Цитата Сообщение от Мария2411 Посмотреть сообщение
Не используя, компилятор дать ответ равны или нет будут значения X и Y
Ответ: равны.

Цитата Сообщение от Мария2411 Посмотреть сообщение
Объяснить свой ответ.
потому что А-(-В) после раскрытия скобок превратится в А+В, а А+В == А+В, отсюда X == Y
Rifle
26 / 26 / 5
Регистрация: 15.11.2012
Сообщений: 93
Завершенные тесты: 4
14.04.2013, 10:06 #5
Точно, сам проглядел. Тогда действительно, элементарная математика ))
Kastaneda
Форумчанин
Эксперт С++
4652 / 2860 / 228
Регистрация: 12.12.2009
Сообщений: 7,270
Записей в блоге: 2
Завершенные тесты: 1
14.04.2013, 10:11 #6
Но что-то мне подсказывает, что ожидатеся ответ именно в том виде, как ты написал. Просто препод правильно сформулировать вопрос не смог.

Добавлено через 1 минуту

Не по теме:

Цитата Сообщение от Rifle Посмотреть сообщение
указывать в первый элемент строки, т.е. 2.
где-то на форму уже поднимался этот вопрос, короче правильно говорить "второй элемент", если говорить о порядке элемента, но "с индексом 1", если говорить об индексах.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.04.2013, 10:11
Привет! Вот еще темы с ответами:

Работа с указателями - C++
Здравствуйте! Есть массив созданный ГСС. Надо написать функция которая вычисляет сколько в нем четных чисел, выделяет память под них и...

Работа с указателями - C++
Всем здравия. Нужна ваша помощь. Есть задание по С++. К сожалению работала в основном по С# да и с указателями не совсем лажу. Может кто...

Работа с указателями - C++
#include <iostream> #include <conio.h> using namespace std; void fun(int *p) { int *temp=new int; *temp=15; delete p; ...

работа с указателями - C++
#include <iostream> using namespace std; int main() { char *res=""; res="1"; res="2"; ...


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

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

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