0

b[]配列を配列にコピーするには、次のようにa[]関数memcpyを使用できます。 memcpy(a,b,sizeof(a)).
ただしmemcpy、バイトをある場所から別の場所にコピーするだけです。
私の質問は次のとおりです。

1.バイトをコピーしてmemcpy配列の要素をコピーする方法は? 2.が引数として提供されるのはなぜですか? b[]a[]
sizeof(a)

私はプログラミングが初めてなので、優しくしてください。

4

6 に答える 6

0

最初の質問は興味深い質問です。はい、単純なバイナリ コピーですが、コピーの順序が重要です。たとえば、重なっている領域があり、&a[0] > &b[0] の場合、どうなるでしょうか? 左から右の場合、memcpy はコピー中に b[] からのデータを単純に上書きします。

私の知る限り、コピーの特定の順序は標準によって指定されておらず、より安全な代替手段として代わりに memmove を使用することをお勧めしますが、それでも.

于 2013-06-18T11:54:32.037 に答える