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

Ошибка в указателях - C++

Восстановить пароль Регистрация
 
ктумфен
1 / 1 / 0
Регистрация: 29.09.2013
Сообщений: 18
24.05.2014, 22:08     Ошибка в указателях #1
Здравствуйте, не понимаю почему выводит мусор. Вроде бы все правильно сделал.
Знаю что можно было сделать p[i] = rand(); но меня это не интересует.
Скажите, где ошибка?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    int *p, n = 10;
    p = new int [n];
    
    
    for(int i=0; i<n; i++)
    {   
        *p = rand()&100;
         p++;
    }
    
p = p - 10*sizeof(int);              //похоже не корректно работает эта строка
    for(int i=0; i<n; i++)
         cout << p[i] << ' ';
    cout << endl;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2014, 22:08     Ошибка в указателях
Посмотрите здесь:

C++ ошибка в указателях
C++ обьясните простым языком о указателях * и &
C++ Об указателях
C++ немного об указателях
написать стёк на указателях C++
Расскаэите о указателях на функции C++
Совсем запутался в указателях C++
C++ Об указателях по философски-математически

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jewbacabra
1787 / 1502 / 538
Регистрация: 24.04.2014
Сообщений: 4,215
24.05.2014, 22:12     Ошибка в указателях #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
умножение на sizeof(int) лишнее
ктумфен
1 / 1 / 0
Регистрация: 29.09.2013
Сообщений: 18
24.05.2014, 22:15  [ТС]     Ошибка в указателях #3
вот блин а.
спасибо
Yandex
Объявления
24.05.2014, 22:15     Ошибка в указателях
Ответ Создать тему
Опции темы

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