• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:別次元配列への文字コピー)

別次元配列への文字コピーに特別な制約は?

このQ&Aのポイント
  • 別次元配列への文字コピー(not文字列)をする際には特別な制約はありますか?
  • 2次元配列から1次元配列への文字コピー、1次元配列から2次元配列への文字コピーにはどのような方法がありますか?
  • コードの一部で正しく出力されているが、全体の出力内容がおかしくなる原因は何ですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

>別次元配列への文字コピー(not文字列)をする際特別な制約ってありますか? ありません。と言うか、配列は単に便宜的な扱いを示すもので、 位置や範囲の管理はプログラマの責任です。 >strcpy(&ABC[m][n],&DEF[i]); ABCやDEFはchar型と推察されますが、strcpyはパラメータが配列か どうかなんてことは知りません。コピー元のデータが\0になるまで、 1バイトずつコピーを続けます。配列要素内に\0がなければ、配列で 定義した範囲を超えて処理を続けます。 >not文字列 文字列でなく、単にバイト型のデータをコピーするのでしたら、 strcpyは不適切で、memmoveを使わなければなりません。 >printf("%s\n",ABC); このステートメントではABCの先頭から\0までが表示されます。 どのような結果を期待したのでしょう?

hardtechno
質問者

お礼

memmoveを用いていなかった事が原因でした。 教えていただきましてありがとうございました。

関連するQ&A