strncat
string.h:インデックス への移動
ヘッダー ファイル
string.h、mbstring.h
カテゴリ
メモリおよび文字列操作ルーチン、インライン ルーチン
プロトタイプ
char *strncat(char *dest, const char *src, size_t maxlen);
wchar_t *wcsncat(wchar_t *dest, const wchar_t *src, size_t maxlen);
unsigned char *_mbsncat(unsigned char *dest, const unsigned char *src, size_t maxlen);
unsigned char *_mbsnbcat(unsigned char *__dest, const unsigned char *__src, _SIZE_T __maxlen);
説明
一方の文字列の一部をもう一方の文字列に付加します。
strncat は、src の最大 maxlen 個の文字を dest の末尾にコピーした後、NULL 文字を付け加えます。 結果として得られる文字列の最大長は、strlen(dest) + maxlen になります。
最初の 3 つの関数は動作がまったく同じで、引数と戻り値の型だけが異なります。
_mbsnbcat については、2 バイト文字の第 2 バイトが NULL の場合、この文字の第 1 バイトは NULL と見なされます。 _mbsnbcat は、他の関数のように文字数ではなく、最大 maxlen バイトをコピーします。
戻り値
strncat は dest を返します。
例
#include <string.h>
#include <stdio.h>
int main(void)
{
char destination[25];
char *source = " States";
strcpy(destination, "United");
strncat(destination, source, 7);
printf("%s\n", destination);
return 0;
}
移植性
| POSIX | Win32 | ANSI C | ANSI C++ | |
|---|---|---|---|---|
|
strncat |
+ |
+ |
+ |
+ |
|
_mbsncat |
+ |
|||
|
_mbsnbcat |
+ |
|||
|
_wcsncat |
+ |