ホームページ >バックエンド開発 >C++ >C++ で strcpy_s を使用する方法

C++ で strcpy_s を使用する方法

下次还敢
下次还敢オリジナル
2024-05-08 01:36:181043ブラウズ

strcpy_s 関数は、文字列 src を文字列 dst に安全にコピーするために使用されます。その構文は次のとおりです。パラメータの有効性を確認します。 strcpy_s を呼び出して src を dst にコピーします。戻り値をチェックして、コピーが成功したか、ターゲット文字列が小さすぎたかを確認します。

C++ で strcpy_s を使用する方法

#C での strcpy_s 関数の使用法

strcpy_s 関数は、ある文字列を別の文字列にコピーするために使用されます。

文字列を安全にコピーするの strcpy 関数よりも優れています。

構文:

<code class="cpp">errno_t strcpy_s(char* dst, size_t dstSize, const char* src);</code>

パラメータ:

  • dst: ターゲット文字列の 住所。
  • dstSize: ターゲット文字列 (null 文字を含む) の最大サイズ。
  • src: ソース文字列のアドレス。

戻り値:

  • 0: コピーに成功しました。
  • ERANGE: 宛先文字列が小さすぎて、ソース文字列を収容できません。
  • EINVAL: パラメータが無効です。

使用法:

  1. パラメータの確認: dstsrc# を確認してください## 有効な文字列を指し、dstSize はソース文字列を収容するのに十分な大きさです。 Call strcpy_s:
  2. ソース文字列を宛先文字列にコピーします。
  3. 戻り値を確認してください:
  4. 戻り値が
  5. ERANGE の場合は、ターゲット文字列が小さすぎるため、dstSize を小さくする必要があることを意味します。調整した。
  6. 例:

<code class="cpp">char dst[100];
const char* src = "Hello, world!";

strcpy_s(dst, sizeof(dst), src);

std::cout << dst << std::endl; // 输出 "Hello, world!"</code>
注:

strcpy_s は自動的に末尾に表示されます。対象文字列 ヌル文字「\0」を追加します。

  • dst
  • nullptrsrcnullptr、または dstSize が ## の場合#0 の場合、strcpy_sEINVAL を返します。 dstSize パラメータには null 文字を含める必要があります。そうしないと、
  • strcpy_s
  • によりバッファ オーバーフローが発生する可能性があります。

以上がC++ で strcpy_s を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。