Skip to content

Latest commit

 

History

History
69 lines (47 loc) · 1.68 KB

File metadata and controls

69 lines (47 loc) · 1.68 KB

strncat

  • cstring[meta header]
  • std[meta namespace]
  • function[meta id-type]
namespace std {
  char* strncat(char* s1, const char* s2, size_t n);
}
  • size_t[link /reference/cstddef/size_t.md]

概要

文字列を、上限サイズを指定して結合する。

効果

s2が指す配列の先頭から最大n文字、もしくは終端ヌル文字までのいずれか短いほうを、s1が指す文字列の末尾に連結する。s1の終端ヌル文字がs2の先頭文字で上書きされる。

連結後の文字列には、常に終端のヌル文字が付加される。

コピー元とコピー先の領域が重なっている場合、動作は未定義である。

戻り値

s1を返す。

備考

  • この関数は、フリースタンディング処理系でも使用できる。
  • s1が指す配列は、連結後の文字列を終端のヌル文字まで格納できる十分な大きさを持っていなければならない。

#include <cstring>
#include <iostream>

int main()
{
  char s[12] = "hello";

  // " world!!!"の先頭6文字だけを連結する
  std::strncat(s, " world!!!", 6);

  std::cout << s << std::endl;
}
  • std::strncat[color ff0000]

出力

hello world

バージョン

言語

  • C++98

関連項目

  • strcat: 文字列を結合する
  • strncpy: 文字列をコピーする(上限サイズ指定)

参照