Ciao a tutti ho una domanda di Visual C++
se potete aiutarmi...se non potete ditemelo subito che non sto ad aspettare invano le risposte...
o un Array da riempire solamente che non viene riempito e non capisco dove sbaglio...
codice:
HRESULT hr = -1;
CComVariant t;
int val=-1;
float valf=-1;
SAFEARRAYBOUND rgsabound[1];
rgsabound[0].lLbound = 0;
rgsabound[0].cElements = 3;//numero elementi dell'array
SAFEARRAY *psa = SafeArrayCreate(VT_R4, 1, rgsabound);//vettore monodimensionale
long index[1];
char *valore = strtok(valC,"_");
if(cmd<3)
{
for(int i=0;i<3;i++)
{
index[0]=i;
valf = atof(valore);
CComVariant v3(valf);
hr = SafeArrayPutElement(psa,index,&v3);
if (FAILED(hr))
printf("inserimento fallito\n");
valore = strtok(NULL,"_");
v3.Clear();
long *pData = NULL;
HRESULT hr = SafeArrayAccessData (psa, (void **) & pData);
if(FAILED(hr))
printf("accesso fallito\n");
else
{
long Low (0), High (0);
SafeArrayGetLBound (psa, 1, & Low);
SafeArrayGetUBound (psa, 1, & High);
long Size = High-Low +1;
}
}
Non riesco a capire dove sbaglio...ho preso gli spunti da vari tutorial...ma non capisco...mi sapete dare una mano?