タグ付けされた質問 「memmove」

11
memcpy()対memmove()
私は違いを理解しようとしているmemcpy()としmemmove()、そして私は、テキスト読み持っているmemcpy()のに対し、重複送信元と送信先の世話をしていないmemmove()んです。 ただし、これらの2つの関数を重複するメモリブロックで実行すると、どちらも同じ結果になります。たとえば、memmove()ヘルプページで次のMSDNの例を見てください。 の欠点を理解し、それmemcpyをどのようにmemmove解決するためのより良い例がありますか? // crt_memcpy.c // Illustrate overlapping copy: memmove always handles it correctly; memcpy may handle // it correctly. #include <memory.h> #include <string.h> #include <stdio.h> char str1[7] = "aabbcc"; int main( void ) { printf( "The string: %s\n", str1 ); memcpy( str1 + 2, str1, 4 ); printf( "New …
157 c  memcpy  memmove 


2
「バイト数」をゼロに設定してmemcpy()およびmemmove()を呼び出すことはできますか?
私はactully移動することは何もないとき/治療の例に必要でコピーしていますmemmove()/ memcpy()エッジケースなど int numberOfBytes = ... if( numberOfBytes != 0 ) { memmove( dest, source, numberOfBytes ); } または私はチェックせずに関数を呼び出す必要があります int numberOfBytes = ... memmove( dest, source, numberOfBytes ); 前のスニペットのチェックは必要ですか?
102 c++  c  pointers  memcpy  memmove 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.