The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Тип указателя"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (C/C++)
Изначальное сообщение [ Отслеживать ]

"Тип указателя"  –1 +/
Сообщение от redd email on 18-Апр-18, 09:46 
Для чего указателю тип, ??
Заранее же известно что там будет, адрес объекта ..??
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Тип указателя"  +1 +/
Сообщение от izyk (ok) on 18-Апр-18, 12:57 
> Для чего указателю тип, ??
> Заранее же известно что там будет, адрес объекта ..??

void *

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Тип указателя"  +1 +/
Сообщение от PereresusNeVlezaetBuggy (ok) on 18-Апр-18, 15:33 
> Для чего указателю тип, ??
> Заранее же известно что там будет, адрес объекта ..??

Чтобы знать, какого рода объект. Тем более, что без знания типа структуры, указатель на неё использовать проблематично.

ЦП ведь ничего не знает про массивы и структуры, он с ними со всеми работает по тому же принципу: база+смещение. Это просто фишка языка, добавляющая семантику, чтобы программист меньше тупил и ошибался.

Можете ради интереса посмотреть на Cello, например: http://libcello.org/

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Тип указателя"  +/
Сообщение от redd email on 18-Апр-18, 17:10 
Ok
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Тип указателя"  +/
Сообщение от Филимон Доходчивый on 18-Апр-18, 17:30 
> Для чего указателю тип, ??
> Заранее же известно что там будет, адрес объекта ..??

Чтобы правильно реализовывать адресную арифметику. Например, инкремент указателя (не на void) сдвигает его не на байт, а на размер типа

int a[] = {0, 1, 2, 3, 4};
int *pa = a;

std::cout << *pa << std::endl;
pa = pa + 1;
std::cout << *pa << std::endl;
pa = pa + 1;
std::cout << *pa << std::endl;

std::cout << "size of int is " << sizeof(int) << std::endl;

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Тип указателя"  +/
Сообщение от redd email on 18-Апр-18, 18:38 
Надо попробовать, ...
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру