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

Сдвиг массива символов - C++

Восстановить пароль Регистрация
 
Aero93
8 / 8 / 1
Регистрация: 19.12.2011
Сообщений: 35
21.04.2012, 18:51     Сдвиг массива символов #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class G {
    public:
char name[20];
char maker[20];
int num;
int price;
};
G A,B,C;
G D[3];
void third(){ int i;
    i = atoi(D[2].name);
    D[0].name = D[1].name << i;
    D[0].maker = D[1].maker;
    D[0].num = D[1].num;
    D[0].price = D[1].price;
    getch();};
При компиляции пишет, что не правильные параметры для сдвига(<<). Помогите пожалуйста сдвинуть...

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

Прошу прощения. Циклический сдвиг нужен.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1787
Регистрация: 18.12.2011
Сообщений: 14,197
Завершенные тесты: 1
21.04.2012, 20:29     Сдвиг массива символов #2
Поскольку надо переставлять символы, то операцией << сделать не получится,
вот функция сдвигающая массив s размером size на n символов.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void ArrayShiftL(char* s,int size,int n)
{
   n=n%size;
   char *tail=new char[n];
   for(int i=0;i<n;i++)
      tail[i]=s[i];
   for(int i=n;i<size;i++)
      s[i-n]=s[i];
   for(int i=size-n;i<size;i++)
   {
      s[i]=tail[i+n-size];
   }
   delete[] tail;
}
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
21.04.2012, 21:09     Сдвиг массива символов #3
memmove или
memcpy
в помощь
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
21.04.2012, 21:12     Сдвиг массива символов #4
Либо std::rotate из STL.
Yandex
Объявления
21.04.2012, 21:12     Сдвиг массива символов
Ответ Создать тему
Опции темы

Текущее время: 16:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru