Considering the following code:
Code:
int fnParser(char *buffer,float* pOutput){
int c = 0;
char * pch;
pch = strtok (buffer,",");
pOutput[c] = atof(pch);
while (pch != NULL)
{
c++;
pch = strtok(NULL, ",");
if(pch != NULL) pOutput[c] = atof(pch);
}
return sizeof(pOutput);
}
char buffer[] = "200,300,123456,1.00000,.707,.4,'.404";float *fParseData;
int iSize=fnParser(buffer,fParseData);
printf("Buffer size = %i\n",iSize);
fnParser converts 'buffer' into a 7 member array 'pOutput' so why does sizeof(pOutput) aka iSize keep coming up 4 instead of 7?