operowanie na wskaźniku do struktury

operowanie na wskaźniku do struktury
SA
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam.

Załóżmy że mam strukturę

Kopiuj
 
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:

Kopiuj
 
int setData(int buff, sampleStruct* struct);

Dane które posiadam są w formie:

Kopiuj
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

Kopiuj
struct->a = 1;
struct->b = 2;
//...
struct->xyz = 1500100900;
  • Rejestracja: dni
  • Ostatnio: dni
0

hint: memcpy()

SA
  • Rejestracja: dni
  • Ostatnio: dni
0
n0name_l-tmp napisał(a):

hint: memcpy()

Kombinowałem w ten sposób:

Kopiuj
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ą?

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
0
Kopiuj
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;

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.