Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.06.2021, 17:28   #1
Roberttt
Пользователь
 
Регистрация: 30.05.2018
Сообщений: 56
Радость Реверс массива с помощью указателей (Си)

Здравствуйте! Подскажите, пожалуйста, что я делаю неправильно при разыменовании указателя *current?
Задача состоит в том, чтобы с помощью передачи в функцию указателя на первый элемент и на следующий элемент после массива перевернуть массив.

Код:
void array_reverse_ptr(int* array, int* limit) {
    for (int* current = array; current < limit; current++){
        int storage_prt = *current;
        *current = *(limit - current - 1);
        *(limit - current - 1) = storage_prt;
    }
}      

int main()
{
    int myarray[] = {1, 2, 3, 4, 5, 6};
    int myarray_size = 6;

    array_reverse_ptr(myarray, myarray + 6);
    printf("\n");

    for (int i = 0; i < myarray_size; i++){
        printf("%d ", myarray[i]);
    }
}
Roberttt вне форума Ответить с цитированием
Старый 19.06.2021, 21:34   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Код:
void array_reverse_ptr(int *array, int *limit) {
    for (int *first = array, *last = limit - 1; first < last; first++, last--) {
        int storage_prt = *first;
        *first = *last;
        *last = storage_prt;
    }
}      

int main(void)
{
    int myarray[] = {1, 2, 3, 4, 5, 6};
    int myarray_size = 6;

    array_reverse_ptr(myarray, myarray + myarray_size);
    printf("\n");

    for (int i = 0; i < myarray_size; i++) {
        printf("%d ", myarray[i]);
    }

    return 0;
}
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 19.06.2021, 22:43   #3
Roberttt
Пользователь
 
Регистрация: 30.05.2018
Сообщений: 56
По умолчанию

Спасибо за помощь
Roberttt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вызвать с помощью указателей все методы Get Artur221 Общие вопросы C/C++ 7 16.04.2021 14:52
Обработать строку с помощью указателей(Visual C++)) medieval Помощь студентам 0 17.11.2013 13:23
Реверс частей массива GangstaKarapuse Помощь студентам 1 26.11.2011 17:29
обращение к элементам массива в С++ с помощью указателей серг Помощь студентам 0 05.12.2009 22:58
Массив указателей (с помощью ООП) diliana Помощь студентам 8 30.11.2009 12:12