Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
2 / 2 / 1
Регистрация: 20.10.2014
Сообщений: 13

Преобразовать ссылку на класс в long int

04.02.2015, 13:17. Показов 1333. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.

Как преобразовать адрес памяти выделенной для класса в число?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
class test{
 
};
int main() {
    test *pInterface= new test;
 
    long adres;
    adres = (long)pInterface;
    cout << adres << endl;
    return 0;
}
в VS работает.

эклипс на строке преобразования выдает "cast from 'test*' to 'long int' loses precision [-fpermissive]"

Может можно как то по-другому преобразовать?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.02.2015, 13:17
Ответы с готовыми решениями:

Требуется написать функцию long long pow(long long a, unsigned int p), которая возводит число a в степень p
Требуется написать функцию long long pow(long long a, unsigned int p), которая возводит число a в степень p и возвращает ap. Помогите...

Как в функции my_function преобразовать ссылку на базовый класс в ссылку на класс B или С
Всем привет, как в функции my_function преобразовать ссылку на базовый класс в ссылку на класс B или С ? class A { public: A(); ...

Быстрое вычисление наибольшего общего делителя для unsigned long long int
Даны два числа типа unsigned long long int, в них могут оказаться любые представимые значения, требуется максимально быстро вычислить...

3
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.02.2015, 13:31
То, что выдаёт эклипс должно быть предупреждением, а не ошибкой. Смысл предупреждения такой, что адрес занимает больше бит, чем long, а потому при преобразовании старшие биты могут потеряться. Наверное там идёт работа в варианте адрес 8-байтный, а long 4-байтный. Это можно выяснить достоверно, запустив программу:

C++
cout << sizeof(pInterface) << endl;
cout << sizeof(adres) << endl;
Но по хорошему для таких операций вместо типа long надо использовать тип size_t или uintptr_t. Этот тип настроен в соответствии с размером указателя

http://www.viva64.com/ru/a/0050/
2
267 / 170 / 40
Регистрация: 25.08.2014
Сообщений: 1,087
Записей в блоге: 1
04.02.2015, 13:35
Если волнуют предупреждения, то можно их заглушить с помощью #pragma warning(disable: номер_предупреждения)
1
2 / 2 / 1
Регистрация: 20.10.2014
Сообщений: 13
04.02.2015, 13:40  [ТС]
да, вы правы!
спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.02.2015, 13:40
Помогаю со студенческими работами здесь

Перевести long long unsigned int в массив char
Подскажите, пожалуйста, как превратить число типа long long unsigned int в массив символов? Каждый символ - цифра числа в 16-значной...

Подскажите что за типа такой long long int?
Вопрос собственно сверху. Нигде не смог найти описания подобного типа

Максимальная и минимальная цифра числа long long int
Доброго времени суток! Подскажите, пожалуйста, как с помощью цикла (while, do while, for) определить максимальную и минимальную цифры числа...

Работа с unsigned long long int на 32-битных системах
В программе испольуется тип данных unsigned long int, но в некоторых (хотя и очень редких) случаях этого диапазона может быть недостаточно....

long long int и его поведение в структуре
#include &lt;iostream&gt; struct IndexBase { public: int x; int y; int z; unsigned int lastChange; unsigned long long int...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru