メモリ/指定した文字数分コピーする・memmove
の編集
Top
/
メモリ
/
指定した文字数分コピーする・memmove
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
#navi(../) * 指定した文字数分コピーする・memmove [#rcbbe051] memcpyなどを使用して同様のことを実現することもできますが、本資料ではmemmoveを使用した記事です。~ 以下にmemmoveを使用したC言語サンプルソースを記します。 #contents #htmlinsert(c_ads_top.html) * 関連記事 [#gc9c8f2b] -[[メモリの内容を指定した値で初期化する・memset>メモリ/メモリの内容を指定した値で初期化する・memset]] -[[メモリ内容をコピーする・memcpy>メモリ/メモリ内容をコピーする・memcpy]] -[[構造体の内容をコピーする・memcpyは使わない!>メモリ/構造体の内容をコピーする・memcpyは使わない!]] -[[メモリの比較を行う・memcmp>メモリ/メモリの比較を行う・memcmp]] -[[動的にメモリを取得する・malloc>メモリ/動的にメモリを取得する・malloc]] -[[動的メモリサイズを拡張する・realloc>メモリ/動的メモリサイズを拡張する・realloc]] -[[malloc,calloc,reallocで取得したメモリを解放する・free>メモリ/malloc,calloc,reallocで取得したメモリを解放する・free]] -[[指定した文字数分コピーする・memmove>メモリ/指定した文字数分コピーする・memmove]] -[[指定したバイトの指定個数分メモリを確保する・calloc>メモリ/指定したバイトの指定個数分メモリを確保する・calloc]] * memmove関数の書式など [#kc896c94] 以下にmemmove関数の書式等を記します。 -必要なインクルード #include <string.h> -書式 void *memmove(void *dest, const void *src, size_t n); -引数~ 1つ目: コピー先 2つめ: コピー元 3つ目: コピーする数 -戻り値~ なし * memmoveを使用したサンプルソース [#eed3be23] 以下にmemmoveを使用したC言語サンプルソースを記します。 &ref(memmove.c); (改行コードLF) #include <stdio.h> #include <string.h> #define BUFSIZE 10 int main(void) { int i; char src1[] = { "0123456789" }; char src2[] = { "0123456789" }; char *dest ="dest"; memmove(&src1[0], &src1[5], 5); printf("%s\n", src1); memmove(src2, dest, strlen(dest)); printf("%s\n", src2); return 0; } 以下にコンパイルし実行した結果を記します。 $ gcc memmove.c -o memmove $ ./memmove 5678956789 dest456789 以上、memmoveのサンプルソースでした。 //#htmlinsert(c_ads_btm.html)
タイムスタンプを変更しない
#navi(../) * 指定した文字数分コピーする・memmove [#rcbbe051] memcpyなどを使用して同様のことを実現することもできますが、本資料ではmemmoveを使用した記事です。~ 以下にmemmoveを使用したC言語サンプルソースを記します。 #contents #htmlinsert(c_ads_top.html) * 関連記事 [#gc9c8f2b] -[[メモリの内容を指定した値で初期化する・memset>メモリ/メモリの内容を指定した値で初期化する・memset]] -[[メモリ内容をコピーする・memcpy>メモリ/メモリ内容をコピーする・memcpy]] -[[構造体の内容をコピーする・memcpyは使わない!>メモリ/構造体の内容をコピーする・memcpyは使わない!]] -[[メモリの比較を行う・memcmp>メモリ/メモリの比較を行う・memcmp]] -[[動的にメモリを取得する・malloc>メモリ/動的にメモリを取得する・malloc]] -[[動的メモリサイズを拡張する・realloc>メモリ/動的メモリサイズを拡張する・realloc]] -[[malloc,calloc,reallocで取得したメモリを解放する・free>メモリ/malloc,calloc,reallocで取得したメモリを解放する・free]] -[[指定した文字数分コピーする・memmove>メモリ/指定した文字数分コピーする・memmove]] -[[指定したバイトの指定個数分メモリを確保する・calloc>メモリ/指定したバイトの指定個数分メモリを確保する・calloc]] * memmove関数の書式など [#kc896c94] 以下にmemmove関数の書式等を記します。 -必要なインクルード #include <string.h> -書式 void *memmove(void *dest, const void *src, size_t n); -引数~ 1つ目: コピー先 2つめ: コピー元 3つ目: コピーする数 -戻り値~ なし * memmoveを使用したサンプルソース [#eed3be23] 以下にmemmoveを使用したC言語サンプルソースを記します。 &ref(memmove.c); (改行コードLF) #include <stdio.h> #include <string.h> #define BUFSIZE 10 int main(void) { int i; char src1[] = { "0123456789" }; char src2[] = { "0123456789" }; char *dest ="dest"; memmove(&src1[0], &src1[5], 5); printf("%s\n", src1); memmove(src2, dest, strlen(dest)); printf("%s\n", src2); return 0; } 以下にコンパイルし実行した結果を記します。 $ gcc memmove.c -o memmove $ ./memmove 5678956789 dest456789 以上、memmoveのサンプルソースでした。 //#htmlinsert(c_ads_btm.html)
テキスト整形のルールを表示する