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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zhrk
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 6
#1

Ох уж эти указатели - C++

25.02.2013, 21:08. Просмотров 263. Ответов 4
Метки нет (Все метки)

Есть С++ библиотека
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
    int CCDTitanFUnctions::GetFrame(float exduration)
    {
        if (hCam == NULL)
            return 1;
 
        // Don't switch amplifier off for short exposures
        //ArtemisSetAmplifierSwitched(hCam, exduration>2.5f);
 
        // Start the exposure
        Start = ArtemisStartExposure(hCam, exduration*0.001f);
 
        // Wait until it's ready, or ESC is pressed.
        // A more polished app would not use this method!
        while(!ArtemisImageReady(hCam))
        {
            if (GetAsyncKeyState(VK_ESCAPE)&0x8000)
            {
                ArtemisAbortExposure(hCam);
                return 2;
            }
            Sleep(100);
        }
 
        int x,y,wid,hgt,binx,biny;
        ArtemisGetImageData(hCam, &x, &y, &wid, &hgt, &binx, &biny);
        x_out = x; y_out = y; w_out = wid; h_out = hgt;
 
        [B][I][U]unsigned short* pimg = (unsigned short*)ArtemisImageBuffer(hCam);[/U][/I][/B]
 
        lenght = sizeof(pimg);
        return 3;
    }
Должна в pimg запихувать массив изображения с камеры, но как я не долбаюсь длинна pimg = 4 и все.... до этого все этапы инициализации и всего остального камера работают четко... как тут быть и чего дальше делать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.02.2013, 21:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ох уж эти указатели (C++):

Ах, эти указатели - C++
Начал изучать С++ и тут наткнулся на недопонимание. Операция new резервирует место в куче, необходимое для хранения значения этого...

Указатели и указатели на указатели, а также типы данных - C++
Недавно начал изучать Си, перешел с Delphi. Много непонятного и пока процесс идет медленно. Накачал литературы, буду изучать) Щас...

Через указатели на указатели посчитать сумму двух чисел и записать в третье - C++
1. Через указатели на указатели посчитать сумму двух чисел и записать в третье. 2. Написать примитивный калькулятор, пользуясь только...

Есть три переменные. Используя указатели на указатели, поменять значение максимальной и минимальной переменной - C++
Мой код. #include <iostream> #include <stdlib.h> #include<iomanip> using namespace std; void min_max(int*pa, int*pb,...

Указатели на указатели с числами. Почему можно присвоить число в 4-ый элемент, если массив из 2 элементов? - C++
Есть массив int **mas; mas=new int*; // выделил место под пять строк, верно ? mas=new int;// выделил для первой строки матрицы два...

Отсортировать массив и вывести на экран (массивы и указатели на указатели) - C++
Даны массивы F-фамилий студентов и S-результаты сессии (5 оценок) , причем s- результат сессии F студента. Отсортировать массив S по...

4
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
25.02.2013, 21:25 #2
pimg - это указатель. sizeof(pimg) всегда равен 4 в 32 битных системах и 8 - в 64 битных и ничего вы с этим не сделаете. наверно вместо lenght = sizeof(pimg); нужно сделать что-нибудь другое. если это указатель на длину,
то length = *pimg; если указатель на что-то другое - то нужно что-то другое делать.
0
zhrk
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 6
25.02.2013, 21:39  [ТС] #3
Цитата Сообщение от DU Посмотреть сообщение
pimg - это указатель. sizeof(pimg) всегда равен 4 в 32 битных системах и 8 - в 64 битных и ничего вы с этим не сделаете. наверно вместо lenght = sizeof(pimg); нужно сделать что-нибудь другое. если это указатель на длину,
то length = *pimg; если указатель на что-то другое - то нужно что-то другое делать.
ага....
это указатель на массив
// Return pointer to internal image buffer (actually unsigned shorts)
extern void* ArtemisImageBuffer(ArtemisHandle hCam);

так вот оно описано в UserAPI

идея - по этому указателю выковырять массив...
0
DU
1483 / 1129 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
25.02.2013, 21:43 #4
я так понял нужно получить размер этого буфера (массива). так вот sizeof для этого не подходит. нужно смотреть другие UserAPI функции, которые бы вернули размер буфера. или самостоятельно считать этот размер исходя из размера и формата изображения.
0
zhrk
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 6
25.02.2013, 22:06  [ТС] #5
Цитата Сообщение от DU Посмотреть сообщение
я так понял нужно получить размер этого буфера (массива). так вот sizeof для этого не подходит. нужно смотреть другие UserAPI функции, которые бы вернули размер буфера. или самостоятельно считать этот размер исходя из размера и формата изображения.
Ну реальные значения получаются внутри ф-ции... вот как бы этот массив выковырять наружу... а еще лучше для C#
0
25.02.2013, 22:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2013, 22:06
Привет! Вот еще темы с ответами:

Написать программу сортировки через указатели на указатели - C++
Вот моя программа #include <iostream> #include <conio.h> #include <string> using namespace std; //Сортировка "пузырьком". ...

Указатели на слонов или А зачем нужны указатели? - C++
Знаю что таких вопросов было уйма, но я так и не нашел ответа на свой вопрос. Для чего нужны указатели? Что такое указатели я знаю, это...

Используются ли на практике указатели на указатели объектов? - C++
Имеются ввиду указатели именно на объекты, а не динамические массивы. Например такой: Object** obj; А как насчёт такого: Object***...

Указатели на массивы. Указатели и функции - C++
Вот задача: Даны два массива : А и B. Необходимо создать третий массив, в котором нужно собрать: -Элементы обоих массивов; -Общие...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru