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

помогите отличить разыменование от указателя - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 47, средняя оценка - 4.81
unreal
0 / 0 / 0
Регистрация: 26.02.2012
Сообщений: 118
08.03.2012, 15:34     помогите отличить разыменование от указателя #1
люди помогите отличить разыменование от указателя.дайте ссылку ,книгу хот что угодно.я читал много книг но ни в одном не нашел чтоб там было и разыменование и указатель.у всех один ест а другой нету(
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.03.2012, 15:34     помогите отличить разыменование от указателя
Посмотрите здесь:

C++ Разыменование нулевого указателя
Ссылка и Разыменование в с++ C++
C++ Указатели и разыменование
Разыменование указателя! C++
C++ Разыменование указателя на указатель
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,094
08.03.2012, 15:43     помогите отличить разыменование от указателя #2
Указатель никого не ест. А разыменование — лишь способ получения объекта по указателю и это есть в любой книге.
Петррр
 Аватар для Петррр
5917 / 3354 / 333
Регистрация: 28.10.2010
Сообщений: 5,926
08.03.2012, 15:46     помогите отличить разыменование от указателя #3
Указатель переменная, хранящая в себе адрес ячейки памяти.
тип *имя_переменной;
Где тип это тип данных который расположен по адресу который хранится в имя_переменной

Дейтелы, 5-е издание, 509 страница:
Операция *, обычно называется операцией разыменования или операцией косвеной адресации, возвращает синоним (т.е. псевдоним) для объекта, на который указывает ее операнд-указатель.
unreal
0 / 0 / 0
Регистрация: 26.02.2012
Сообщений: 118
08.03.2012, 15:49  [ТС]     помогите отличить разыменование от указателя #4
Цитата Сообщение от NoMasters Посмотреть сообщение
Указатель никого не ест. А разыменование — лишь способ получения объекта по указателю и это есть в любой книге.
в моих книгах нету.вы не могли бы писать имя книги ?
unreal
0 / 0 / 0
Регистрация: 26.02.2012
Сообщений: 118
08.03.2012, 17:27  [ТС]     помогите отличить разыменование от указателя #5
напишите прогу в которой невозможно обойтись без указателя
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
08.03.2012, 17:54     помогите отличить разыменование от указателя #6
Цитата Сообщение от unreal Посмотреть сообщение
напишите прогу в которой невозможно обойтись без указателя
Допусти необходимо
Код
Создаем массив(кол-во элементов передается через командную строку)
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
 *      Создаем массив(кол-во элементов передается через командную строку)
 */
 
#include <stdio.h>
#include <stdlib.h>
 
#define MAX 10
 
int array(const int);
    
int main(int argc, char* argv[])
{
    size_t size;
    
    if ( argc != 2 )
    {
        fprintf(stderr, "%s: error arg\n", argv[0]);
        exit(1);
    }
    
    sscanf(argv[1], "
", &size);
    
    exit(array(size));
}
 
int array(const int SIZE)
{
    int* arr = NULL;
    size_t i;
    
    if ( !(arr = malloc(SIZE * sizeof *arr)) )
    {
        fprintf(stderr, "Error memory\n");
        return 1;
    }
    
    for ( i = 0 ; i < SIZE ; ++i )
    {
        arr[i] = rand() % MAX;
        printf("%5d", arr[i]);
    }
    
    printf("\n");
    
    free(arr);
    
    return 0;
}
Bash
1
2
3
4
5
6
‘‚@ANDREY-PC /c/mingw
$ gcc -o addr addr.c
 
‘‚@ANDREY-PC /c/mingw
$ addr.exe 2
    1    7
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
08.03.2012, 17:54     помогите отличить разыменование от указателя #7
Цитата Сообщение от unreal Посмотреть сообщение
напишите прогу в которой невозможно обойтись без указателя
Получить значение какого-нибудь участка памяти.
C++
1
2
3
4
5
6
7
#include <iostream>
 
int main()
{
    int *p = reinterpret_cast< int * > (0xDEADBEEF);
    std::cout << *p;
}
Больше в с++ они нигде, в общем-то, не нужны.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
08.03.2012, 18:02     помогите отличить разыменование от указателя #8
Цитата Сообщение от go Посмотреть сообщение
sscanf(argv[1], "
", &size);
Не понимаю: почему так криво код скопировался? О_о

Добавлено через 6 минут
Цитата Сообщение от diagon Посмотреть сообщение
Больше в с++ они нигде, в общем-то, не нужны.
В Си, например, нельзя без них изменить значение в функции
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
08.03.2012, 18:08     помогите отличить разыменование от указателя #9
Цитата Сообщение от go Посмотреть сообщение
В Си, например, нельзя без них изменить значение в функции
Цитата Сообщение от diagon Посмотреть сообщение
Больше в с++ они нигде, в общем-то, не нужны.
5букв
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.03.2012, 20:24     помогите отличить разыменование от указателя
Еще ссылки по теме:

C++ Разыменование указателя в структуре
Разыменование указателя, не передается правильное значение C++
Разыменование указателя C++

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

Или воспользуйтесь поиском по форуму:
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
08.03.2012, 20:24     помогите отличить разыменование от указателя #10
Цитата Сообщение от diagon Посмотреть сообщение
Больше в с++ они нигде, в общем-то, не нужны.
Не согласен. Как минимум в программах, в которых используется динамический полиморфизм. Иногда, конечно, можно обходиться ссылками, но они всё таки являются не совсем полноценной заменой указателям, да и указатели как-то привычнее.
Yandex
Объявления
08.03.2012, 20:24     помогите отличить разыменование от указателя
Ответ Создать тему
Опции темы

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