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

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

Войти
Регистрация
Восстановить пароль
 
lips
2 / 2 / 0
Регистрация: 03.01.2012
Сообщений: 310
#1

Указатель на массив - C++

14.02.2015, 14:08. Просмотров 216. Ответов 6
Метки нет (Все метки)

объясните пожалуйста что я тут делаю:
C++
1
2
3
4
5
    char b[500];
    char* Buffer = &b[0];
 
 
    Buffer = "123";
и почему у меня после этого в char b пусто?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2015, 14:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатель на массив (C++):

Реализовать 3 функции, каждая из которых принимает указатель на массив и количество элементов и возвращает указатель на новый массив. - C++
Пишу в Microsoft Visual Studio ->Win32 Console application ->C++. Условие:Реализовать 3 функции, каждая из которых принимает указатель на...

Как сделать функцию, возвращающую указатель на функцию (которая в свою очередь возвращает указатель на массив) - C++
Изучаю c++ по одной книжке.Она говорить не умеет.. Так вот понадобилось написать функцию,которая как параметр получает указатель на...

Динамический массив и указатель на указатель - C++
Спасибо за внимание) Задача такова: нужно удалить элемент по индексу, при этом уменьшить сам массив на 1 (т.е. удалили элемент - уменьшился...

Как получить ссылку на указатель или указатель на указатель в массиве? - C++
В процессе реализации сортировки пузырьком натолкнулся на такую проблему: как поменять значения указателей, передаваемых в функцию. Если...

Написать функцию принимающую массив и возвращающую указатель на динамический массив - C++
Написать функцию принимающую массив и возвращающую указатель на динамический массив содержащий первые n нaибольших чисел. Как сделать...

Что быстрее использовать, массив э-в, или указатель на массив э-в? - C++
уважаемые, что быстрее использовать, массив э-в, или указатель на массив э-в? или без разницы? С одной стороны обращается все к той же...

6
nmcf
5754 / 5065 / 1732
Регистрация: 14.04.2014
Сообщений: 20,749
14.02.2015, 14:11 #2
Потому что указатель изменился.
C++
1
strcpy(Buffer, "123");
1
KolodeznyDiver
1895 / 1472 / 167
Регистрация: 01.06.2013
Сообщений: 3,069
14.02.2015, 14:14 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Строка 2 - Buffer стал указывать на начало массива b.
Строка 5 - Buffer стал указывать на строковую константу "123".
Для копирования нужно strcpy(Buffer,"123");
1
lips
2 / 2 / 0
Регистрация: 03.01.2012
Сообщений: 310
14.02.2015, 14:16  [ТС] #4
спасибо! везде использовал эту функцию, а с указателями решил принебречь ей, компилятор проигнорировал... а я и не заметил эту глупость
0
nmcf
5754 / 5065 / 1732
Регистрация: 14.04.2014
Сообщений: 20,749
14.02.2015, 14:37 #5
Компилятор и не должен реагировать, это не синтаксическая ошибка.
0
KolodeznyDiver
1895 / 1472 / 167
Регистрация: 01.06.2013
Сообщений: 3,069
14.02.2015, 14:50 #6
Цитата Сообщение от nmcf Посмотреть сообщение
Компилятор и не должен реагировать, это не синтаксическая ошибка.
А мог бы и предупредить, что в указатель не на константу записывают адрес константной строки. Но не все предупреждают.
0
castaway
Эксперт С++
4919 / 3027 / 372
Регистрация: 10.11.2010
Сообщений: 11,085
Записей в блоге: 10
Завершенные тесты: 1
14.02.2015, 15:03 #7
Цитата Сообщение от KolodeznyDiver Посмотреть сообщение
А мог бы и предупредить
Мог, но не обязан, т.к. это корректно с точки зрения языка.
0
14.02.2015, 15:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2015, 15:03
Привет! Вот еще темы с ответами:

Указатель на массив - C++
Не могу разобраться в указателях. Допустим есть двумерный массив, выводятся поочереди 19 элементов. Если я в инструкции if поменяю...

Массив и указатель - C++
При компиляции кода, приведенного ниже, вывод происходит со второго числа. Почему? int mass = {1, 2, 3, 4, 5, 6}; int *pmass = mass; ...

Указатель на массив - C++
Есть такая структура struct Elem { char cos; Elem * next; Elem * prev; }; Elem * Head=NULL,*Tail=NULL;

Указатель на массив - C++
Подскажите пожалуйста, как создать указатель на массив, если длина массива записана в переменной? Т.е проблема в том что в квадратных...


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

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

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