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

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

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

Объясните ошибку! - C++

07.06.2012, 11:58. Просмотров 283. Ответов 2
Метки нет (Все метки)

Здравствуйте, господа форумчане!

Предлагаю вашему вниманию фрагмент кода, который компилируется в Builder'е (винда), но g++ его не пропускает (под линухом) пишет 12: error: lvalue required as increment operand.

Мой вопрос заключается в том как изменить код, чтобы g++ его пропустил и почему ему такой вариант не нравиться?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
  1 #include <iostream>
  2 #include <string.h>
  3 
  4 using namespace std;
  5 
  6 int main() {
  7         char arch[11] = "0123456789";
  8         int k = strlen(arch) + 1;
  9         char *newar = new char[k];
 10 
 11         for ( int i = 0; i < k; ) {
 12                 newar[i++] = *arch++;
 13                 
 14                 if ( !(i % 3) )
 15                         cout << "\narch = " << arch;
 16         }
 17 
 18         cout << "\nk = " << k << "  newar = " << newar;
 19         
 20         cout << "\nsizeof(arch) = " << sizeof(arch) << endl << endl;
 21         
 22         return 0;
 23 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.06.2012, 11:58     Объясните ошибку!
Посмотрите здесь:

Объясните ошибку - C++
using namespace std; int main(){ setlocale(LC_ALL, &quot;Russian&quot;); system(&quot;color 0E&quot;); srand(time(NULL)); cout &lt;&lt;...

Объясните ошибку Unresolved external - C++
#include &lt;iostream.h&gt; #include &lt;iomanip.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; class Hex { unsigned char hex; unsigned...

Объясните ошибку. (cout in iostream) - C++
//intvars.cpp // работа с переменными целого типа #include &lt;iostrem&gt; using namespace std; int main() { int var1; ...

Объясните ошибку новичку в работе со строкой - C++
#include &quot;stdafx.h&quot; #include &lt;stdlib.h&gt; #include &lt;iostream&gt; void my_strdel( char *s, int p, int k) { int l = strlen(s); ...

Объясните функцию классы в С++ и укажите мою ошибку. - C++
Изучаю классы в языке C++, написав несколько строк кода для вывода числа. не могу понять и исправить ошибку, вот код: #include&lt;iostream&gt; ...

Слишком много символов в константе - объясните ошибку - C++
Задание: Определённые культуры растений на 3-х полях, определить культуры на каждом поле, показать какие культуры растут хотя бы на одном...

Полиндром: найдите ошибку в коде рекурсии и объясните - C++
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; bool palindrome(string *m, int i, int j) { if( i==j || i&gt;j) ...

объясните - C++
объясните пожалуйста подробно смысл этой строчки.. только очень подробно.. return sqrt(static_cast&lt;double&gt;(sum)); Добавлено через...

объясните - C++
ребят вот программа с помощью кой как получилась но не фига в ней понять не могу если можно примеры кодов жтой проги попроще или объясните...

Объясните - C++
Вот собственно и программа... #include &lt;stdlib.h&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; using namespace std; int...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
never old
8 / 8 / 1
Регистрация: 02.06.2012
Сообщений: 25
07.06.2012, 12:27     Объясните ошибку! #2
arch не объявлялся в качестве указателя
C++
1
2
        char *arch = new char[11];
        arch = "0123456789";
Так пропустит, но уже sizeof(arch) будет всегда 4
Spirited
7 / 7 / 0
Регистрация: 18.01.2009
Сообщений: 55
07.06.2012, 12:44  [ТС]     Объясните ошибку! #3
Спасибо разобрался.
можно еще и так без выделения памяти под arch

C++
1
2
3
        const char *arch = "0123456789";
        int k = strlen(arch) + 1;
        char *newar = new char[k];
Ответ Создать тему
Опции темы

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