強力なC言語memset()関数の使い方

875 ワード

この文章はmemcpy()関数の簡単な紹介であり,この関数についていくつかの重要な説明をした.
文字列をコピーする操作は非常に一般的で、そのためにCライブラリは私たちのためにこの操作を実現して関数にカプセル化して、私たちがよく使うのはstrcpy()関数です.しかしstrcpy()関数機能は時々窮屈になるので,ここでは機能が強いmemcpy()関数の使い方を紹介する.
まずもちろん関数プロトタイプ、void*memcpy(void*dest、const void*src、size_t n);
この関数はstrcpy()関数と同様に定義されています.
この関数のいくつかの説明について:
1.destはコンテンツのコピー先、srcはコピーするコンテンツの開始位置、size_t nは、コピーコンテンツのバイト数である.
2.memcpy()は、データをコピーする関数(もちろん文字列をコピーするのによく用いられる)であり、任意のタイプのデータをコピーすることができる.これは、第1の点でコンテンツをコピーすることをずっと言っているが、文字列をコピーする理由とは言わない.これによって第3の説明が与えられる.
3.memcpy()は、説明に従ってすべてのデータをコピーします.特に、文字列をコピーするときに「0」の存在によって停止することはありません.理由ははっきりしているはずです.
ここまで来ると、memcpy()のコピーデータが強くなっているのが見えてくるでしょう.しかし、レプリケーション文字列では、strcpy()では実現できない連続レプリケーションの長さを任意に指定できます.以下はmemcpy()の簡単な栗を使います.コードの意味ははっきりしているはずですが、読者が自分で理解すればいいです.
char a[100],b[50];
memcpy(a+10,b+10*sizeof(char),5*sizeof(char));