operowanie na wskaźniku do struktury

0

Witam.

Załóżmy że mam strukturę

 
typedef struct {
int a;
int b;
double c;
// ... goes on and on
} sampleStruct;

Mam także funkcję przyjmującą jako argumenty bufor (ilość struktur) oraz wskaźnik do struktury:

 
int setData(int buff, sampleStruct* struct);

Dane które posiadam są w formie:

sampleStruct myData = {
{1, 2, 3.3},
{4, 5, 6.6}
};

Moje pytanie brzmi:
W jaki sposób wrzucić dane z myData do struct?
myData ma naprawdę wiele elementów i z oczywistych względów chciałbym uniknąć opcji

struct->a = 1;
struct->b = 2;
//...
struct->xyz = 1500100900;
0

hint: memcpy()

0
n0name_l-tmp napisał(a):

hint: memcpy()

Kombinowałem w ten sposób:

setData(int buff, struct **s){
// skip unimportant stuff
   *s = myData;
}

int main(){
   struct item *stuff = NULL;
   setData(&stuff);

Czy coś jest nie tak z tą metodą?

0
const sampleStruct myData[]=
  {
   {1, 2, 3.3},
   {4, 5, 6.6},
  };

sampleStruct tmp;
tmp=myData[0];
sampleStruct *ptr=new sampleStruct;
*ptr=myData[1];
...
delete ptr;

1 użytkowników online, w tym zalogowanych: 0, gości: 1