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

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

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

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

28.04.2013, 05:30. Просмотров 330. Ответов 3
Метки нет (Все метки)

Расскажите как работает каждая строка в коде
C++
1
2
3
4
char *A = "123456789"; 
unsigned B = 1; 
char *X = A + B; 
char *Y = A  -  (- B);
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.04.2013, 05:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с указателями (C++):

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

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

Работа с указателями - C++
Доброго времени суток! Прошу помощи в решении очень интересной задачи. Перепробовал все свои знания., не получается( Чаще всего...

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

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

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
28.04.2013, 06:49 #2
Арифметика указателей

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
 
int main()
{
    char* A = "193456789";  //массив A 
    unsigned B = 1;         // шаг
    char *X = A + B;        //Открываем проходим по индексу 1. A + B = 0 + 1 = A[1]
    char *Y = A  -  (- B);  //Открываем 0 индекс, минус на минус даёт + A + B 
 
    std::cout << *A << std::endl << *X << std::endl  << *Y << std::endl;
 
    return 0;
}
0
squi
0 / 0 / 0
Регистрация: 28.04.2013
Сообщений: 21
28.04.2013, 10:39  [ТС] #3
GetVariable, а разве строка
C++
1
 char *A = "123456789";
не объявляет указатель на строку 123456789
как она тут массив создает?
0
tezaurismosis
Администратор
Эксперт .NET
6947 / 3256 / 496
Регистрация: 17.04.2012
Сообщений: 7,983
Записей в блоге: 14
28.04.2013, 10:48 #4
Цитата Сообщение от squi Посмотреть сообщение
не объявляет указатель на строку 123456789
Строка представляет из себя массив из символов (char), завершающийся нуль-символом(\0), поэтому вы можете обратиться к ней как к массиву:
C++
1
2
char *A = "123456789";
cout << A[2] << endl;  // 3
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.04.2013, 10:48
Привет! Вот еще темы с ответами:

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

Работа с указателями - C++
Здравствуйте Не понимаю, почему в следующем коде #include &lt;iostream&gt; using namespace std; int * max (int *p, int...

Работа с указателями - C++
Помогите пожалуйста объяснить, не понимаю почему число присваемое через указатель *А в кавычках, и равны ли *А и просто А??? char *A =...

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


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

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

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