Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Просблема с типами данных

305
17 февраля 2004 года
Kashuk
385 / / 21.02.2003
В C++ есть такой тип как указатель..
А есть ли такое в Васика, а именно указатель на тип char?

Спасибо.
478
17 февраля 2004 года
XtreamAll
279 / / 01.10.2003
Не...нету;)
Тока в С++...
305
17 февраля 2004 года
Kashuk
385 / / 21.02.2003
Цитата:
Originally posted by XtreamAll
Не...нету;)
Тока в С++...



Тогда должен быть какой то способ это раелизовать...

258
17 февраля 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by Kashuk
В C++ есть такой тип как указатель..
А есть ли такое в Васика, а именно указатель на тип char?

Спасибо.



Типа такого нет, в VB нельзя явно работать с памятью, но например объектн. переменные все являются указателями (их называют - неявными).

Что касается строк в VB, то как пишет тов. Гетц: даже если вы используете ключевое слово ByVal, не думайте, что VBA передаст строку по значению, то есть поместит ее прямо в стек. Для строк это просто невозможно - они всегда передаются по ссылке. ByVal будет означать для строк передачу функции параметра LPSTR, его отсутствие - передачу параметра BSTR

Что тебе конкретно надо, для чего понадобился указатель?

В качестве послесловия: у Microsoft есть две НЕДОКУМЕНТИРОВАННЫЕ функции, возращающие адрес объектных и станд. переменных в памяти. Подробная статья илюстрирующая это: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnw32dev/html/ora_apiprog6_topic1.asp

319
17 февраля 2004 года
xelos
577 / / 27.02.2003
Цитата:
Originally posted by Kashuk
В C++ есть такой тип как указатель..
А есть ли такое в Васика, а именно указатель на тип char?

Спасибо.


Что есть указатель? не более чем дольшое целое число. Что хранится в указателе? адрес какой-то. Большие числа в Бэйсике есть, адрес можно получить через AddressOf - по-моему он работает как для адресов процедур, так и для переменных - точно не помню, надо МСДН смотреть. Однако, такое понятие как пустые указатели, вроде не существует. Или указатели просто на память, а не на адрес объекта. Если сильно приперло - можно свой класс создать - указатели.

258
18 февраля 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by xelos

Что есть указатель? не более чем дольшое целое число. Что хранится в указателе? адрес какой-то. Большие числа в Бэйсике есть, адрес можно получить через AddressOf - по-моему он работает как для адресов процедур, так и для переменных - точно не помню, надо МСДН смотреть. Однако, такое понятие как пустые указатели, вроде не существует. Или указатели просто на память, а не на адрес объекта. Если сильно приперло - можно свой класс создать - указатели.



1. Через AddressOf - ты можешь получить адрес ТОЛЬКО Sub или Function объявленной как Public в Станд. модуле - так что это не поможет.

2. Для извлечение адреса переменных есть 3 недокументированные ф-ции: ObjPtr, VarPtr, StrPtr - они возвращают адреса начала объектов, но с некоторыми тонкостями: strptr показывает на расположение первого символа строки, хотя до него еще идет 4 байта с длиной строки; VarPtr - по умолч. выводит адрес начала структуры, хотя можно вывести и адрес конкретного поля структуры VarPtr MyType.MyField и т.д.

3. Ну массив/коллекцию указателей или как их принято в VB называть pointer (не тянут они на указатели) ты конечно можешь сбацать - просто массив чисел Long, но это будет парадия на указатели в том смысле, что в Си над указателями ты можешь делать что хочешь, спокойно передвигать его и указывать на любое место памяти - твой произвол и большая ответсвенность.

Ну вообщем это все отвлеченные разговоры, я так думаю, что у Kashuk какая-то конкретная проблема...

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог