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

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

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

Как значение массива другому массиву? - C++

27.03.2013, 02:39. Просмотров 682. Ответов 13
Метки нет (Все метки)

Здравствуйте!
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include<iostream>
 
using namespace std;
const int Max = 15;
 
void reversit(char);
 
int main()
{
 
char array[Max];
cout << "Vvedite stroky(@ - vihod)";
cin.get(array,Max,'@');
 
for(int i = 0; i < Max; i++)
cout << array[i];
cout << endl;
return 0;
}
 
 
void reversit(char ar1)
{
    char ar2[Max];
 
    for(int i = 0, j = Max-1; i < Max; i++, j--)
   ar2[i] = ar1[j];
 
    for(int i = 0; i < Max; i++)
    ar1[i] = ar2[i];
}
Пробую присвоить значение одного массива, другому через операцию присваивания. Компилятор ругается.

И раз я уже на форуме, не могу не удержаться и не спросить еще кое что... В коде я объявил и определил глобальную переменную для обозначения размера самого массива. const int Max = 15; если я пытаюсь ее объявить с маленькой буквы, то компилятор ругается и выбивает кучу ошибок (код корректировал из-за изменения имени переменной). Но если я ее объявляю к примеру const int m=15;, то программа работает нормально. Почему так получается ?
Буду благодарен за разъяснения и естественно плюсану на спасибо.


-------
Во назвал топ(не полностью скопировал строку из поиска и не посмотрел). Хотел отредактировать но нельзя.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2013, 02:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как значение массива другому массиву? (C++):

Присваивание элементов двумерного массива другому двумерному массиву - C++
нужно элементы одного двумерного массива присвоить другому. Вот программа. Но для одномерного массива она работает, если соответственно...

Даны два одномерных массива разной размерности. найти элементы принадлежащие и тому и другому массиву - C++
Помогите пожалуйста! Даны два одномерных массива разной размерности. найти элементы принадлежащие и тому и другому массиву. (на языке...

Как вывести одно значение из массива list? Лучше использовать итератор или как-то по другому? - C++
Здравствуйте! Что бы вывести одно значения из массива list нужно использовать итератор или можно как то по другому?

Присвоение массиву значение массива - C++
Здравствуйте, помагите пожалуйсто, как присвоеть масиву значения масива. Ну вернее я хочю чтобы в масиве был бы масив. Ну или...

Как присвоить массиву значение суммы? - C++
Вычислить сумму элементов матрицы по столбцам . Найти наименьшую сумму. #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; ...

Как присвоить двумерному символьному массиву значение? - C++
Проблема в строке 18. Как будет правильно? #include &lt;cstdio&gt; int main() { char buf; int i,j,N,time,t,k,buftime,m; ...

13
UnsKneD
алкокодер
154 / 150 / 11
Регистрация: 27.12.2012
Сообщений: 548
27.03.2013, 02:48 #2
C++
1
void reversit(char ar1[])
или
C++
1
void reversit(char *ar1)
Добавлено через 1 минуту
Цитата Сообщение от IvanInanovich Посмотреть сообщение
const int Max = 15; если я пытаюсь ее объявить с маленькой буквы
А чем компилируете?
1
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
27.03.2013, 02:51  [ТС] #3
И как я не заметил. Не внимательность. Спасибо большое.

Добавлено через 1 минуту
Цитата Сообщение от UnsKneD Посмотреть сообщение
C++
1
void reversit(char ar1[])
Добавлено через 1 минуту

А чем компилируете?
Code::Blocks 10.05
0
UnsKneD
алкокодер
154 / 150 / 11
Регистрация: 27.12.2012
Сообщений: 548
27.03.2013, 03:02 #4
Цитата Сообщение от IvanInanovich Посмотреть сообщение
Code::Blocks 10.05
Не должно такого быть, может не везде поменял?

Добавлено через 2 минуты
Скопируй сюда сообщения отладчика
0
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
27.03.2013, 03:06  [ТС] #5
Точно корректирую код. Вот даже снова все сделал.
И сразу показывается страшная писанина (я даже не знаю как лучше выделить для более удобной читабельности):


\Tetsnaf\main.cpp||In function 'int main()':|
\Tetsnaf\main.cpp|11|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|11|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|13|error: 'array' was not declared in this scope|
\Tetsnaf\main.cpp|13|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|13|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|15|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|15|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp||In function 'void reversit(char*)':|
\Tetsnaf\main.cpp|24|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|24|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|26|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|26|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|26|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|26|error: reference to 'max' is ambiguous|
\Tetsnaf\main.cpp|4|error: candidates are: const int max|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|253|error: template<class _Tp, class _Compare> const _Tp& std::max(const _Tp&, const _Tp&, _Compare)|
e:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\stl_algobase.h|209|error: template<class _Tp> const _Tp& std::max(const _Tp&, const _Tp&)|
\Tetsnaf\main.cpp|27|error: 'ar2' was not declared in this scope|

||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build finished: 50 errors, 0 warnings ===|
0
UnsKneD
алкокодер
154 / 150 / 11
Регистрация: 27.12.2012
Сообщений: 548
27.03.2013, 03:18 #6
IvanInanovich, действительно есть такая штука Но, я почти не пользуюсь code blocks.
1
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
27.03.2013, 03:22  [ТС] #7
Цитата Сообщение от UnsKneD Посмотреть сообщение
IvanInanovich, действительно есть такая штука Но, я почти не пользуюсь code blocks.
Для начинающих читал он более удобен. Сравнивал с VS2010 толи и вправду удобней(есть пару моментов), толи прывык уже. VS2010 закончился срок лицензии (хотя вроде как бесплатная версия была). Так что пока приходиться юзать КБ.
Еще раз спасибо за помощь!)
0
Friday
ну и долго меня небыло...
61 / 57 / 8
Регистрация: 24.03.2013
Сообщений: 173
27.03.2013, 03:23 #8
IvanInanovich, попробуйте microsoft visual studio 2010 express с офф. сайта microsoft.
0
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
27.03.2013, 03:25  [ТС] #9
Цитата Сообщение от Friday Посмотреть сообщение
IvanInanovich, попробуйте microsoft visual studio 2010 express с офф. сайта microsoft.
С него и качал, думал бесплатно все. Но почему-то в данный момент просит ключ.)) Пожил он у меня думаю с месяц.
0
Friday
ну и долго меня небыло...
61 / 57 / 8
Регистрация: 24.03.2013
Сообщений: 173
27.03.2013, 03:26 #10
лицензию можно продлевать бесплатно
как по мне , mvs удобнее, я уже привык, проблем вообще нету)
0
UnsKneD
алкокодер
154 / 150 / 11
Регистрация: 27.12.2012
Сообщений: 548
27.03.2013, 03:30 #11
IvanInanovich, объяснение есть в сообщениях отладчика, коде блокс думает что ты вызвал функцию std::max()
1
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
27.03.2013, 03:30  [ТС] #12
Цитата Сообщение от Friday Посмотреть сообщение
лицензию можно продлевать бесплатно
как по мне , mvs удобнее, я уже привык, проблем вообще нету)
Хмм... Попробую завтра, может заново скачаю тогда :)
0
Friday
ну и долго меня небыло...
61 / 57 / 8
Регистрация: 24.03.2013
Сообщений: 173
27.03.2013, 03:31 #13
IvanInanovich, попробуйте еще раз - правильное решение) Если что пойдет не так - то для этого и есть форум!)
1
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
27.03.2013, 03:33  [ТС] #14
Цитата Сообщение от UnsKneD Посмотреть сообщение
IvanInanovich, объяснение есть в сообщениях отладчика, коде блокс думает что ты вызвал функцию std::max()
аааа....
Это из-за using namespace std;
Не зря много кто говорит что это плохой тон)
Спасибо, разобрались.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2013, 03:33
Привет! Вот еще темы с ответами:

Неправильно присваивается значение массиву - C++
Неправильно присваивается значение массиву Вот код: #include &lt;iostream&gt; using namespace std; int main() { int n,p =...

Не получается присвоить значение двумерному массиву char - C++
объявляю двумерный массив (массив массивов в char для хранения имен файлов) в cpp файле char m_fname ; я хочу инициализировать...

Присвоение массиву массива - C++
Здравствуйте. Создаю конструктор структуры, содержащей массивы. Присвоение массива массиву выдает ошибку: Can not assign to array type...

Проверка на принадлежность элементов одного массива к другому - C++
Здравствуйте. Имеется 2 массива - in_string (содержит текст, который вводится пользователем) и alf(содержит буквы латинского алфавита)....


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

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

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