で配列を初期化するためのmemcpyを使用する方法:1つの引数が4つの要素の配列です私もそれのための機能を初期化している私は、単純な構造体持っている構造体
typedef struct{
double par[4];
}struct_type;
を。どのように正しく使用するmemcpy構造体の配列を初期化するには?この私のために動作しませんような何か:
struct_type* init_fcn(double array[4]){
struct _type* retVal;
retVal->par=malloc(sizeof(double)*4);
memcpy(retVal->par,&array);
return retVal;
}
は、私は、initは一つずつ値ことができますが、私はmemcpyのが良いと速くなりますthnik。あなたはそれを適切に行う方法を知っていますか?
は、memcpyのも –
'のはsizeof(*ダブル)malloc関数に与えられたサイズと同じである配列のサイズを、必要と'ナンセンスであるとなりますコンパイラエラーです。これは[mcve] – StoryTeller
ではなく、 'memcpy(retVal-> par、array、sizeof(double)* 4)'のようなものです。また、mallocでは 'sizeof(double)'(1要素のサイズ)を使用します。 –