std:: wcsncpy
|
Определено в заголовочном файле
<cwchar>
|
||
|
wchar_t
*
wcsncpy
(
wchar_t
*
dest,
const
wchar_t
*
src,
std::
size_t
count
)
;
|
||
Копирует не более count символов широкой строки, на которую указывает src (включая завершающий нулевой широкий символ), в массив широких символов, на который указывает dest .
Если count достигается до того, как вся строка src была скопирована, результирующий массив широких символов не завершается нулевым символом.
Если после копирования завершающего нулевого широкого символа из src , значение count не достигнуто, в dest записываются дополнительные нулевые широкие символы до тех пор, пока не будет записано в общей сложности count символов.
Если строки перекрываются, поведение не определено.
Содержание |
Параметры
| dest | - | указатель на массив широких символов для копирования |
| src | - | указатель на широкую строку для копирования |
| count | - | максимальное количество широких символов для копирования |
Возвращаемое значение
dest
Примечания
В типичном использовании, count является размером целевого массива.
Пример
#include <cwchar> #include <iostream> int main() { const wchar_t src[] = L"hi"; wchar_t dest[6] = {L'a', L'b', L'c', L'd', L'e', L'f'}; std::wcsncpy(dest, src, 5); // this will copy 'hi' and repeat \0 three times std::wcout << "The contents of dest are: "; for (const wchar_t c : dest) { if (c) std::wcout << c << ' '; else std::wcout << "\\0" << ' '; } std::wcout << '\n'; }
Вывод:
The contents of dest are: h i \0 \0 \0 f
Смотрите также
|
копирует одну широкую строку в другую
(функция) |
|
|
копирует определённое количество широких символов между двумя неперекрывающимися массивами
(функция) |
|
|
копирует определённое количество символов из одной строки в другую
(функция) |
|
|
C documentation
для
wcsncpy
|
|