名前空間
変種
操作

std::strncpy

提供: cppreference.com
< cpp‎ | string‎ | byte
ヘッダ <cstring> で定義
char*strncpy(char*dest, constchar*src, std::size_t count );

src の指すバイト文字列から最大 count 文字を (終端のヌル文字も含めて) dest の指す文字配列にコピーします。

文字列 src 全体がコピーされる前に count に達した場合、結果の文字配列はヌル終端されません。

src から終端のヌル文字をコピーした後、 count に到達していなければ、合計 count 文字が書き込まれるまで、追加のヌル文字が dest に書き込まれます。

文字列がオーバーラップする場合、動作は未定義です。

目次

[編集]引数

dest - コピー先の文字配列を指すポインタ
src - コピー元のバイト文字列を指すポインタ
count - コピーする最大文字数

[編集]戻り値

dest

[編集]

#include <iostream>#include <cstring>   int main(){constchar* src ="hi";char dest[6]={'a', 'b', 'c', 'd', 'e', 'f'}; std::strncpy(dest, src, 5);   std::cout<<"The contents of dest are: ";for(char c : dest){if(c){std::cout<< c <<' ';}else{std::cout<<"\\0"<<' ';}}std::cout<<'\n';}

出力:

The contents of dest are: h i \0 \0 \0 f

[編集]関連項目

文字列を別の文字列にコピーします
(関数)[edit]
バッファを別のバッファへコピーします
(関数)[edit]
close